Beautiful RacketMatthew Butterick

Beautiful Racket

by Matthew Butterick · first published 2017

51mentions
44recommended by
47HN commenters
2016–2026first – last mentioned

94% recommend6% neutral

How to make your own programming languages with Racket (free online book).

Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Mentions per year

110 2007: 0 mentions2008: 0 mentions2009: 0 mentions2010: 0 mentions2011: 0 mentions2012: 0 mentions2013: 0 mentions2014: 0 mentions2015: 0 mentions2016: 3 mentions2017: 11 mentions2018: 3 mentions2019: 5 mentions2020: 11 mentions2021: 6 mentions2022: 4 mentions2023: 3 mentions2024: 2 mentions2025: 1 mention2026: 1 mention200720172026

What Hacker News says

  • pixelmonkey · Dec 16, 2020 · Recommends

    Racket Scheme & SICP is a fun way to start playing, especially if you are into theoretical concepts of CS and programming, like higher order programming and abstraction. The documentation for Racket is excellent, see e.g. https://docs.racket-lang.org/quick/index.html ... and many people have created online resources to adapt SICP to Racket, as well as other learning texts. I like Beautiful Rack

    on “Ask HN: I want to start learning Lisp. Where do I begin?” ↗
  • ketralnis · Sep 4, 2017 · Recommends

    I'd probably start by using Racket (Racket is a scheme is a lisp) which has a whole toolkit for language building. Arc is written this way, for instance. Often these are lispy languages but there is no reason they have to be. A starting point: http://beautifulracket.com/stacker/ or https://www.hashcollision.org/brainfudge/ That will get you started rediculously quickly and give you things like GC

    on “Ask HN: Resources for building a programming language?” ↗
  • ketralnis · May 9, 2018 · Recommends

    I really like this book and highly recommend it. My only complaint is that because it is so directed (you're writing a programming language and it wants to get you there very quickly) it abstracts a lot of stuff that you'll need to know if you're doing anything other than following this book. For instance, a lot of the code you write will start with #lang br Instead of the usual Racket

    on “Beautiful Racket” ↗
  • JHonaker · Sep 24, 2020 · Recommends

    I've been working my way through Beautiful Racket [1] over the last week or so. It's been awesome. If this kind of thing is of interest to you, I highly recommend it. It's a book focused on a way of thinking that involves building small domain-specific languages to solve your problems. It's so easy. Racket (if you're not aware of what it is) is just a lisp, but the standard library includes an in

    on “Compiling a Lisp: Reader” ↗
  • Buttons840 · Feb 3, 2021 · Recommends

    What do you think of https://beautifulracket.com/ ? Isn't it exactly what you're asking for? You seem to say, I wish there was a book on X, but there is only this book on X. What more do you want? I don't mean that rhetorically, what additional things would you like to see covered?

    on “Creating Languages in Racket (2011)” ↗
  • zitterbewegung · Jan 16, 2017 · Recommends

    I've been reading http://beautifulracket.com/ and its a really good introduction on making interprets.

    on “Show HN: Crafting Interpreters – A handbook for making programming languages” ↗
  • axlprose · Sep 13, 2018 · Recommends

    Beautiful Racket[0] is a good starting point that covers a lot of nice small examples that incrementally build up your understanding of the different components involved in making languages. And it uses Racket[1], which incorporates the idea of crafting many small "domain-specific" languages to solve different problems into its entire philosophy[2]. [0] https://beautifulracket.com/ [1] https://r

    on “Ask HN: What's a starting point for learning how to write programming languages?” ↗
  • soapdog · Oct 2, 2019 · Recommends

    I did and even though I'm forever in love with both Rebol and Red, Racket does languages in a more fun way and powerful way for my own personal taste. Don't know if you have checked this book out but https://beautifulracket.com/ is a wonderful introduction for building languages with Racket.

    on “A New R6RS Scheme Compiler” ↗
  • twalla · Apr 19, 2020 · Recommends

    Racket is nice, as it's very "batteries-included", you get a nice IDE in DrRacket plus a fairly complete standard library. I feel like most people seem to gravitate towards Clojure afterwards for "real" projects - it definitely has the most real world adoption. The Java interop and JVM runtime feel like simultaneously Clojure's biggest strength and biggest weakness. Here are some resources for b

    on “Ask HN: What is the best way to learn Lisp in 2020?” ↗
  • shanusmagnus · Jun 22, 2022 · Recommends

    …examples might be: - SICP, by Abelson and Sussman - Paradigms of Artificial Intelligence Programming, by Norvig By general acclaim, some examples might be: - How to Design Programs, by Felleisen et al - Beautiful Racket, by Butterick - LISP In Small Pieces, by Queinnec - The Art of Computer Programming, by Knuth - The Elements of Computing Systems, by Nisan and Schocken What else comes to mind? (My list is very…

    on “Crafting Interpreters: A Review” ↗
  • daveguy · Dec 22, 2016 · Recommends

    Whenever I see racket I like to point out their very awesome quick start guide: https://docs.racket-lang.org/quick/ Also, relevant here is a quick build-your-own-language tutorial for racket at beautifulracket: http://beautifulracket.com/stacker/intro.html

    on “Binding as Sets of Scopes: Notes on a new model of macro expansion for Racket” ↗
  • rkallos · Jan 25, 2017 · Recommends

    You might enjoy http://beautifulracket.com/ In addition to going over how to write various DSLs in Racket, there are 'explainers' for a lot of Racket concepts.

    on “Racket v6.8” ↗
  • prettyracketta · Oct 5, 2020 · Recommends

    Might not be exactly what you want but the pay-what-you-can (free to read) online book Beautiful Racket[0] is an amazing resource for learning how to build languages. In the words of Alan Kay, "Lisp isn't a language, it's a building material". The last project is implementing an extended version of BASIC that supports interop with Racket, so as imperative as it gets. [0] https://beautifulracket.

    on “Show HN: Learning Project: building an imperative language” ↗
  • wtetzner · Dec 10, 2020 · Recommends

    Maybe try something new related to programming? I can think of a few things that might be interesting (no idea if you've already done them though): * Try a language like Racket. It can feel really liberating, because it's so easy to just get boilerplate stuff out of the way. Beautiful Racket is a nice book to kinda give you a feel for it. [1] * Maybe try doing homebrew development for an old gam

    on “Ask HN: Losing all interest in programming, what now?” ↗
  • phonebucket · Feb 3, 2021 · Recommends

    People interested in language design and learning Racket in one book might enjoy this book https://beautifulracket.com/ Edit: Also Programming Languages: Application and Interpretation, which I haven't been through yet, so can't endorse fully: https://cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-0...

    on “Creating Languages in Racket (2011)” ↗

Keyboard shortcuts

/
Focus search
j / k
Next / previous book
Enter
Open focused book
Esc
Close / go back
g h
Go to Home
g t
Go to Top all-time
g m
Go to Most recommended
g r
Go to Rising
g f
Go to For You
?
Show this help