Funky Templates
TODOs:
Parser:
- [x] Patterns
- [x] Logic operators
- [x] Other number operators
- [x] Full document
- [x] Multiline string
- [x] String interpolation
- [x] Multi line string interpolation
- [x] Lambdas
- [x] Parse time errors
- [ ] Underscores parse time error stuff
- [x] Move string escaping to lalrpop
- [x] Use parser errors better
- [ ] Check scope rules at parse time
Interpreter:
- [x] Basic arithmetic and string building DONE
- [x] Basic function calling and frames
- [x] Arguments
- [X] String interpolation
- [X] Pattern matching
- [X] Lists
- [x] Guards
- [x] Booleans
- [ ] Token hashtable? - not doing
- [X] Better errors (
@L @R
)
- [X] Add location data to ast
- [X] Use AST to make errors
- [X] Underscores
- [X] Closures
- [X] Builtin function
- [X] List
- [X] TEST
- [X] Get
- [X] TEST
- [X] Map
- [X] Filter
- [X] Any
- [X] All
- [X] Fold
- [X] Length
- [x] Extra functions
- [x] Extra operators
- [x] Extra types
API:
- [x] Look into API design patterns in Rust
- [x] Define API
- [x] Adding arguments
- [x] Flesh out return types
- [x] Adding extra builtin functions, types, and operators
Documentation
API:
Language:
- [ ] Work out format for language documentation