Programming languages resources

This page is a collection of my favorite resources for people getting started writing programming languages. I hope to keep it updated as long as I continue to find great stuff.

Compilers

Lisp specific

Runtimes

Pointer tagging and NaN boxing

Resources on representing small values efficiently.

Just-In-Time compilers

Small JITs to help understand the basics. Note that these implementations tend to focus on the compiling ASTs or IRs to machine code, rather than the parts of the JIT that offer the most performance: inline caching and code inlining. Compiling is great but unless you’re producing good machine code, it may not do a whole lot.

Game Boy Emulators

This is a potentially fun way to render the screen without SDL, but only for non-interactive purposes.

This YouTube playlist looks like it could be worth a watch, but it’s a lot of hours.

Lists

I should probably pick and choose some great stuff from these lists to copy onto this page.

Communities