Learn the shared ideas
Build a small mental model of how source text becomes a running program.
Compiler code can look like a wall of unfamiliar words: token, syntax tree, resolver, type checker, intermediate representation, ABI. This guide introduces each word beside the TypeRB responsibility that gives it meaning.
Files and helper names will move. The guide therefore separates durable concepts, responsibility-based change journeys, short versioned code clinics, versioned code maps, and executable evidence. Read how to follow a changing codebase before trying to memorize a repository tree.
Learn the shared ideas
Build a small mental model of how source text becomes a running program.
Run one trace
See a real source file, compiler boundary, generated artifact, and result.
Read a short code clinic
Follow the same input through a few highlighted implementation decisions.
Use the map as reference
Open pinned source links only when you need a responsibility’s current address.
The reference compiler is written in Go. It checks one portable TypeRB language and can generate Go, Ruby, or TypeScript.
The Native compiler is an experimental compiler written in TypeRB. It checks a deliberately smaller language subset and produces native executables through Native MIR and QBE.
Both paths begin with the same question: what does this TypeRB program mean? They answer the later question—how should it run?—in different ways.