ae3a030ad8
Becuase if you try to make reduce() recursive you blow out the stack. Incidentally, "let a = 0; while a < 999999; let a = a + 1 end" is a neat thing to try at this stage of the game |
||
---|---|---|
src | ||
.gitignore | ||
Cargo.toml | ||
Grammar | ||
README |
No-runtime-value-error-language A language wth a largely-python-like where there are no value errors. Can call null like a function Grammar: #comments are hashes # newlines are equivalent to semicolons for breaking up statements let a = 1.3; let b = "string literal" let c = 2 if a < 3 then any(); number(); of(); exprs(); else whatever(); end while condition; do(); whatever(); let a = 3; a; end #function definition fn my_function(arg1, arg2); statements(); end Keywords: if, then, else, while, let, fn, end, null Parsing: http://journal.stuffwithstuff.com/2011/03/19/pratt-parsers-expression-parsing-made-easy/