Cover of Essentials of programming languages

Essentials of programming languages

by Daniel P. Friedman · first published 1992

76mentions
43recommended by
48HN commenters
2008–2026first – last mentioned

90% recommend10% neutral

Why HN recommends it

Scheme-based walk through building interpreters and the fundamentals of language design, seen as the natural follow-up to SICP. Suits readers who want a coherent, hands-on route into language implementation.

Summarised by Claude from recommending comments

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

Mentions per year

120 2007: 0 mentions2008: 1 mention2009: 4 mentions2010: 8 mentions2011: 12 mentions2012: 1 mention2013: 1 mention2014: 1 mention2015: 5 mentions2016: 3 mentions2017: 6 mentions2018: 2 mentions2019: 1 mention2020: 6 mentions2021: 4 mentions2022: 3 mentions2023: 2 mentions2024: 2 mentions2025: 2 mentions2026: 1 mention200720172026

What Hacker News says

  • kragen · Jun 7, 2020 · Recommends

    …programming languages (and compilers), which is their semantics. We have much better theories of semantics now than we had in the 1970s when the traditional compilers course was being laid out. Books like Essentials of Programming Languages can be wonderful introductions to the fuzzier ones, and there's a lot of work in things like Coq and Idris to come up with tractable formalizations. But you don't need much of a theory of semantics to…

    on “Let's make a Teeny Tiny compiler” ↗
  • plinkplonk · Apr 25, 2008 · Recommends

    This is a great essay. The approach of converting scheme code into C (and possibly assembly) via series of correctness preserving transforms is explained in great detail in Friedman and Wand's "Essentials Of Programming Languages". Get the first edition if you can. It is more comprehensive then the second edition. The third edition should be out in a few weeks so you may want to wait for that, if you plan to buy book.

    on “Is Scheme Faster than C?” ↗
  • binomial · Nov 28, 2010 · Recommends

    …Turing Omnibus Edsger Dijkstra, A Discipline of Programming Richard Feynman, The Feynman Lectures on Computation Friedman and Felleisen, The Little Schemer Friedman and Wand and Haynes, Essentials of Programming Languages [1st edition] James F. Gimpel, Algorithms in Snobol4 Paul Graham, On Lisp Philip Greenspun, Philip and Alex's Guide to Web Publishing Grune and Jacobs, Parsing Techniques: A Practical…

    on “Which programming book you just couldn’t stop reading from start to end?” ↗
  • aphexairlines · Aug 4, 2011 · Recommends

    …(Author), Duane Bibby (Drawings), Gerald J. Sussman (Foreword). The Little Schemer. Programming language principles & implementation books: Daniel P. Friedman, Mitchell Wand, and Christopher T. Haynes. Essentials of Programming Languages. Shriram Krishnamurthi. Programming Languages: Application and Interpretation. Matthias Felleisen, Robby Findler, and Matthew Flatt. Semantics Engineering with PLT Redex These are all by pretty much…

    on “Wadler's critique of SICP (1987)” ↗
  • tonyg · Mar 12, 2018 · Recommends

    I got a lot out of "Essentials of Programming Languages" (2nd edition, at the time) by Friedman, Wand and Haynes. It has a great quote from Hal Abelson in the foreword, too: > Perhaps the whole distinction between program and programming language is a misleading…

    on “Urn: A Lisp implementation for Lua” ↗
  • vector_spaces · Jan 31, 2021 · Recommends

    …waaaaaaay too junior at the time but I'll always remember that interview fondly. My background was more in math and my interests were in PL theory, so he quizzed me on the lambda calculus, and turned me onto Essentials of Programming Languages by Friedman & Wand (and off the bad compiler books I had been reading previously), and pointed me towards material for further study in programming languages and lambda calculus. The interview was still…

    on “Why I still Lisp” ↗
  • jsmanger · May 16, 2009 · Recommends

    The best book to follow up SICP is Essentials of Programming Languages, by Friedman, Wand, and Haynes. It uses Scheme to show how the fundamentals of programming languages are built, and both in its form and its content, it seems a direct continuation from SICP. After you've…

    on “Ask HN: After SICP, what next?” ↗
  • mahmud · Jul 8, 2010 · Recommends

    Essentials of Programming Languages. Engineering a Compiler. Managing Gigabytes. Advanced Programming in the Unix Environment Unix Network Programming On Lisp Advanced Compiler Design and Implementation Concepts, Techniques and Models…

    on “Ask HN: What are your favorite programming books?” ↗
  • andjones · Oct 4, 2010 · Recommends

    Essentials of Programming Languages (EOPL) http://www.amazon.com/Essentials-Programming-Languages-Danie... and The Seasoned Schemer as well http://www.amazon.com/Seasoned-Schemer-Daniel-P-Friedman/dp/...

    on “The Development of Chez Scheme [pdf]” ↗
  • andjones · Apr 19, 2011 · Recommends

    It sounds like you're more interested in programming languages in general. You might find these books interesting: Essentials of Programming Languages http://www.amazon.com/Essentials-Programming-Languages-Danie... The Little Schemer http://www.amazon.com/Little-Schemer-Daniel-P-Friedman/dp/02...

    on “Why PHP Was a Ghetto” ↗
  • tjr · May 1, 2011 · Recommends

    …include: The Little Schemer and Structure and Interpretation of Computer Programs. A good sample project might be to build some sort of language intepreter. For Scheme-based ideas, take a look at the book Essentials of Programming Languages. One of the early projects in that book is to build an arithmetic expression evaluator; by that point, you should be well on your way to thinking functionally.

    on “Ask HN: The best plan to learn the functional programming paradigm” ↗
  • dkarapetyan · Apr 19, 2014 · Recommends

    …goes through various virtual machine implementations and by the end of it you'll understand precisely how pointers, stacks, arrays, etc. all work in various programming languages. Another good book is "Essentials of Programming Languages": http://www.amazon.com/Essentials-Programming-Languages-Danie... but I haven't put enough time into that one to say whether it will benefit you or not. If the previously mentioned online resources and…

    on “What should a self-taught programmer study?” ↗
  • stass · Oct 15, 2016 · Recommends

    Also Essentials of Programming Languages (also by Dan Friedman), which talks specifically about language design and compilation/transformations.

    on “Books Programmers Don't Really Read (2008)” ↗
  • affinespaces · Sep 14, 2018 · Recommends

    Love lisp in small pieces! Beautiful book. Also enjoyed Essentials of Programming Languages by Friedman and Wand -- very SICPish into to programming language implementation in that it weaves together this narrative with uniting underlying themes rather than bombarding the reader with seemingly…

    on “Ask HN: What's a starting point for learning how to write programming languages?” ↗
  • mcguire · Jun 21, 2020 · Recommends

    That list is...not bad, as far as it goes. I would suggest Essentials of Programming Languages by Daniel P. Friedman and Mitchell Wand instead of (or even better, in addition to) Crafting Interpreters. The former is about languages, the latter compilers (or rather interpreters). They are complementary.…

    on “Teach Yourself Computer Science” ↗

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