Ever wondered how Python, JavaScript, or Rust actually work? In this course, you'll learn by building Nova from scratch. No PhD required. Just curiosity.
Understanding compilers makes you a 10x better developer. You'll see code differently forever.
Learn why we need new languages
Break code into tokens
Build syntax trees
Catch errors early
Prove code correct
Emit WebAssembly
Start from zero, end up understanding how every programming language works.
Understand why we're building a new language and what's wrong with the current ones. Runtime errors, security holes, and why AI needs better languages.
Lesson 2The 10,000-foot view. What happens when you run your code? From source text to machine execution, demystified.
Lesson 3Your first real compiler code! Learn how lexers turn source text into tokens. We'll build one from scratch.
Lesson 4Tokens become trees. Learn how parsers understand grammar and build Abstract Syntax Trees.
Lesson 5Why types matter. How type checkers work. Bidirectional type inference explained simply.
Lesson 6Nova's secret weapon. Refinement types and SMT solvers. How code can mathematically prove its own correctness.
Lesson 7The final step. Turn your AST into actual runnable code. Target WebAssembly for universal execution.
RoadmapSee what's built, what's in progress, and where Nova is headed. From foundation to production-ready verification.
Join hundreds of developers learning how programming languages really work.
Start Lesson 1 View on GitHub