Skip to content
Project to illustrate how to build a programming language
Kotlin ANTLR
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Correct Token.endPoint() for $reciever of <EOF> Jan 12, 2017
LICENSE Update Mar 19, 2018
build.gradle implement var storing and loading compilation Sep 7, 2016
gradlew.bat Fixes gradle wrapper issue Sep 7, 2016


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.

  1. Define the lexer
  2. Define the parser
  3. Build an editor with syntax highlighting (the code for this part is in this project)
  4. Build an editor with autocompletion (the code for this part is in this project)
  5. Map the parse tree to the abstract syntax tree
  6. Transform the abstract syntax tree
  7. Validate the abstract syntax tree
  8. Generate bytecode

I hope you enjoy and please let me know if you have issues, ideas, comments or any sort of feedback!

You can’t perform that action at this time.