[racket] Articles or discussions on Racket's implementation

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Sat Jun 2 10:57:37 EDT 2012

On Jun 2, 2012, at 10:32 AM, curtis wolterding wrote:

> A friend and I recently finished working through this book together, The Elements of Computing Systems -http://www1.idc.ac.il/tecs/, where we built a computer (virtually) from the ground up: from NAND gates, to a (barely) working compiler and a very basic OS. 

Sorry for an off-topic reply, but this sentence reminded me of Dijkstra's quote that the name "computer science" applied to astronomy would translate as "telescope science" and biologists should probably be called "microscope scientists". Otherwise I will say that you deserve a badge of honor for completing the above. 

HtDP's full philosophy is the exact opposite. Introduce the systematic design of software as the primary idea of our discipline and the derivation of a machine, including assembler and friends, as the other constraint-inducing end of it. These last few lectures are a part of the original course, including the machine and the loader-linker-assembler, but they didn't make it into the book. 

For the basics of constructing a Racket interpreter, PLAI is the best starting point. It is inspired by Essentials of Programming Languages (Friedman and Wand). To understand the actual implementation, however, you will need to check out material about (jit) compilers once you're through those. The list will help you

-- Matthias

Posted on the users mailing list.