My First Language Frontend with LLVM Tutorial
http://llvm.org/docs/tutorial/MyFirstLanguageFrontend/index.html
kaleidoscope
特点:
只有float64
一种类型
没有类型声明
都是expression
lexer
source -> tokens{code, meta}
parser & ast
source -> lexer -> tokens -> parser -> ast
递归下降 + 操作符优先级parsing.