Build a Language¶
Once a project exists, the usual order is: define your AST types, declare the grammar that fills them, then customize the services (scoping, validation, formatting, editor features).
Reach for these guides once you know the overall workflow and want to dig into a single problem.
Topics¶
- Define the AST — your semantic model:
AstNode,NamedAstNode, and the field types. - Grammar essentials — terminals, rules, and every combinator.
- References and scoping
- Validation
- Formatting
- LSP services
- Workspace lifecycle