- define AST syntax
- define type system
-