Translation Overview
TODO
Translation phases:
- Module translation
- Tokenization (incl. preprocessing)
- Parsing and semantic checking
- Translation to intermediate representation
- Linking, specialization, and code generation
- Link modules
- Creates a single module that contains all entry points and their dependent intermediate representation code
- Specialization for target (incl. generics)
static constconstants must be resolved here at the latest
- Target code emission
- Link modules
- Target compilation and linking (implementation-specified)
- Compile target code to target intermediate representation (optional, depends on target)
- Target intermediate representation to target machine code (optional, depends on target)
- Often just-in-time compilation