Lewis
Syntax agnostic compiler framework
Heavily W.I.P. yet!
Usage
- Define your AST spec
// spec.js const define buildSpec = const types loadAst =
- Build your AST data
// ast.js //// println("hello, world!")// printf("my name is {}", name)// const data = t // ast data made with Lewis is a plain JSON-able objectconsole
- Load node object from AST data, and traverse it
// traverse.js { const first = str0 return first === first} const rootNode = const capitalized = rootNode const code = capitalized console// result://// Println("Hello, world!")// Printf("My name is {}", Name)
Milestone
- Factory
- Node
- Convert
- Traverse
- Scope