Project Sherlock

Computer Science

Compilers & Interpreters

Turning source text into something a machine will execute.

11 topics · 17 curated works

Topics

Reading in Compilers & Interpreters

17

A way in

  1. Start here

    No prior grounding assumed.

    Crafting Interpreters

    Robert Nystrom · 2021

    Builds a tree-walking interpreter and then a bytecode one for the same language, arguing that implementing a language teaches it faster than reading…

  2. Then

    Assumes you know the vocabulary.

    Linkers and Loaders

    John R. Levine · 1999

    Treats linking and loading as a coherent subject in its own right, arguing the topic is under-taught precisely because it sits between compilers and…

    +4 more at this level

  3. Go deeper

    Primary sources and full treatments.

    On the Translation of Languages from Left to Right

    Donald E. Knuth · 1965

    Defines LR(k) grammars and proves they can be parsed deterministically in linear time, giving parser theory the class that most real-world parsing…

    +10 more at this level

12 of 17 works

Essay2010

Linkers

Ian Lance Taylor

Walks through what a linker actually does — symbol resolution, relocation, the ELF format — a step at a time, arguing the subject is simpler than its reputation once laid out in order.

Paper1965

On the Translation of Languages from Left to Right

Donald E. Knuth

Defines LR(k) grammars and proves they can be parsed deterministically in linear time, giving parser theory the class that most real-world parsing algorithms are built to handle.

In order written

1965 – 2021
  1. 1965On the Translation of Languages from Left to RightDonald E. Knuth
  2. 1984Efficient Implementation of the Smalltalk-80 SystemL. Peter Deutsch & Allan M. Schiffman
  3. 1992Engineering a Simple, Efficient Code-Generator GeneratorChristopher W. Fraser, David R. Hanson & Todd A. Proebsting
  4. 1996The Java Virtual Machine SpecificationTim Lindholm & Frank Yellin
  5. 1999Linkers and LoadersJohn R. Levine
  6. 2000Basics of Compiler DesignTorben Ægidius Mogensen
  7. 2000Dynamo: A Transparent Dynamic Optimization SystemVasanth Bala, Evelyn Duesterwald & Sanjeev Banerjia
  8. 2010LinkersIan Lance Taylor
  9. 2019Parsing ExplainedComputerphile
  10. 2021Crafting InterpretersRobert Nystrom

Elsewhere in Computer Science