2 HN users recommended this course2 months2020–2026score 2
Years with an HN recommendation, 2007–2026
Recommended as a practical, approachable build-it-step-by-step introduction to writing compilers, light on theory.
The first episode of a long live-coding series in which Immo Landwerth builds the Minsk compiler for a small language in C#. It starts with a basic expression evaluator and builds toward a full language.
“Not too much theory but from a nuts and bolts perspective I found it extremely approachable.” (HN, 2020)
Here's a great YouTube series where a developer codes, step-by-step, a pretty fully-fledged programming language: [this video] Not too much theory but from a nuts and bolts perspective I found it extremely approachable.
Step-by-step build of a full programming language, practical and approachable.
I don't have something that could be of Crafting Interpreters level on hand, but the general suggestion given to this question on DotNetEvolution discord by Roslyn team members was to start with the spec itself: [link] This might be a bit of a learning curve if you don't have experience with writing compilers like that though. There are other materials that might prove useful should you go down this path: - A series of blog posts of a student who is writing a Rust to .NET compiler which you could follow along: [link] The project itself: [link] - A video series on writing a compiler for .NET from scratch: [this video] Notes: [link] As for CLR via C#, while it has certain facts that remained the same, the ecosystem has changed a lot since then, you really want to target the latest LTS to get best experience and performance. If you liked it, then I can strongly suggest [link] which covers .NET runtime internals. p.s.: if it's any consolation, the promise in CLR via C# of JIT having the advantage of dynamically profiling code execution and compiling to profile-guided version, tuned to the exact hardware and environment is finally fulfilled, many years later :)
Video series on writing a .NET compiler from scratch.
I've been working full time for like 3 yrs as C# dev + doing higher edu at weekends at the same time and I was about to decide thesis topic. I've been searching for something challenging and found some very random post on programming forums about how compilers are hard etc and decided to give it a try. I had kind of advantage that I accidentally had some significant amount of experience with handwritten parsers (at first job we were doing custom-markdown-like-language renderer as PoC or even when doing apprenticeship in high school I was rolling out csv parser instead of using libs, because... I'm not sure why, I probably didnt know how to use package manager or something) I started reading about it a lot like dragon book (but it wasnt that useful tbh, too much math heavy) or [link] or playlist like this: [this video] And after year of jumping into it from time to time I've implemented small, custom-lang to LLVM IR to webassembly (via LLVM) compiler. Then I had to find new job (we were very poorly paid) and I was interested in semiconductors industry because it was gaining traction (e.g chip war book) and it felt way more engineering oriented unlike web dev. Web dev tech decisions felt for me very religious, like fancy-conferences/blogposts oriented. And since semiconductor industry often touches compilers, then that was opportunity for: better salary, interesting projects and in future transition to compilers I've joined semico company as C# dev and then due to project cancellati
Playlist the commenter used while learning compilers.
Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.
3 Hacker News comments
From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.
Read more
Citations, criticism and jokes
Read more