Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Engineering a compiler

    Engineering a compiler

    Keith D. Cooper · 2004

    "The proliferation of processors, environments, and constraints on systems has cast compiler technology into a wider variety of settings, changing the compiler and compiler writer's role. No longer is execution speed the sole criterion for judging compiled code. Today, code might be judged on how small it is, how much power it consumes, how well it compresses, or how many page faults it generates. In this evolving environment, the task of building a successful compiler relies upon the compiler writer's ability to balance and blend algorithms, engineering insights, and careful planning. Today's compiler writer must choose a path through a design space that is filled with diverse alternatives, each with distinct costs, advantages, and complexities." "Engineering a Compiler explores this design space by presenting some of the ways these problems have been solved, and the constraints that made each of those solutions attractive. By presenting the parameters of the problem and their impact on compiler design, the authors convey both the depth of the problems and the breadth of possible solutions. Their goal is to show readers that real tradeoffs exist, and that the impact of those choices can be both subtle and far-reaching."--Jacket.

    Computer Science
    Open LibraryAmazon
    Stats for nerds
    39recommend
    91mentions
    71people
    2007–2026years
    58% recommend35% neutral7% critical

    Mentions per year

    20072009201120132015201720192021202320252026

    What Hacker News says

    1. _falseApr 2026
      Great thread. If you have 1 hour to get started, I recommend opening Engineering a Compiler and studying Static Single-Assignment (SSA) from ch 9.3.

      The book is famous for its SSA treatment. Chapters 1-8 are not required to understand SSA. This allows you to walk away with a clear win. Refer to 9.2 if you're struggling with dominance + liveness.

      http://www.r-5.org/files/books/computers/compilers/writing/K...

      thread
    2. emigreApr 2026
      'Engineering a Compiler' by Cooper & Torczon is a great resource. It gives context on each topic, explains them clearly, and at the same time, I think, it is a really good resource from an academic point of view. It still requires some investment in terms of time and effort, but I found it more approachable than the Dragon book. I would say that both cover more or less the same introductory stage to compilers construction. If you have read the Dragon book, I have the feeling that you are perfectly well prepared to write your own compiler.
      thread
    3. skydhashFeb 2026
      > the huge majority of software engineers are not aware of almost any transformations that an optimizing compiler does

      They may not, but they can be. Buy a book like "Engineering a Compiler", familiarize yourself with the Optimization chapters, study some papers and the compiler source code (most are OSS). Optimization techniques are not spell locked in a cave under a mountain waiting for the chosen one.

      We can always verify the compiler that way, but it's costly. Instead, we trust the developers just like we trust that the restaurant's chef are not poisoning our food.

      thread
    4. nextosSep 2025
      For a classic CS view around the year 2000:

      * Concepts, Techniques, and Models of Computer Programming

      * Engineering a Compiler

      * The Elements of Computing Systems

      thread
    5. sieveFeb 2025
      I got started from the books that were available here in the early 2000s. The one I like the most is "Programming Language Pragmatics" by Michael Scott, mainly for its simplicity. Then there is "Advanced Compiler Design and Implementation" by Steven Muchnick. I have Allen-Kennedy's book too, but I think it went over my head when I went through it. So I kept it aside.

      "Engineering a Compiler" is quite approachable.

      But, once you know the basics, you get the best bang-for-the-buck by looking at source code of various compilers and virtual machines.

      thread
    6. pansa2Jul 2024
      Engineering a Compiler (Cooper and Torczon) seems to be widely recommended. I’ve got the second edition but there’s now a third - not sure how significant the changes are.

      AFAIK the problem with the dragon book is the same as with most academic compiler courses. It spends most of its time on the theory-heavy front-end (parsing) and much less on the back-end (code generation). Real-world compilers are very much the opposite.

      thread

    Related

    Cover of Advanced compiler design and implementation
    2008–2025

    Advanced compiler design and implementation

    Steven S. Muchnick
    13 recommend · 25
    Cover of Optimizing compilers for modern architectures
    2010–2025

    Optimizing compilers for modern architectures

    Randy Allen
    3 recommend · 5
    Cover of Modern compiler design
    2008–2026

    Modern compiler design

    Dick Grune
    12 recommend · 30
    Cover of The Design of an optimizing compiler
    2026

    The Design of an optimizing compiler

    William Allan Wulf
    1 recommend · 2
    Basics of compiler designTorben ©. Mogensen
    2008–2019

    Basics of compiler design

    Torben ©. Mogensen
    4 recommend · 9
    Cover of Modern compiler implementation in ML
    2009–2024

    Modern compiler implementation in ML

    Andrew W. Appel
    24 recommend · 68
    Cover of Compilers, principles, techniques, and tools
    2007–2026

    Compilers, principles, techniques, and tools

    Alfred V. Aho
    195 recommend · 958
    Cover of Compiler construction
    2008–2026

    Compiler construction

    Niklaus Wirth
    30 recommend · 81