LangSandbox
This project is used to illustrate how to build a programming language. The code present here is discussed in a series of articles.
From these series of tutorials I derived a book on creating languages.
You may be interested in the companion project (Kanvas) where we show how to build an editor for your language.
- Define the lexer
- Define the parser
- Build an editor with syntax highlighting (the code for this part is in this project)
- Build an editor with autocompletion (the code for this part is in this project)
- Map the parse tree to the abstract syntax tree
- Transform the abstract syntax tree
- Validate the abstract syntax tree
- Generate bytecode
I hope you enjoy and please let me know if you have issues, ideas, comments or any sort of feedback!