Dylan Baker
da6ce44556
Add length function; preserve Number node line numbers
преди 6 години
Dylan Baker
d66c23ab39
Prettier
преди 6 години
Dylan Baker
80c7326df2
Implement missing closing “/) errors
преди 6 години
Dylan Baker
bd4aa9d124
Fix error handling and bug where let bindings stay in scope
преди 6 години
Dylan Baker
b9e4a1f908
Move AST nodes into one file
преди 6 години
Dylan Baker
369853af3e
Replace compiler with evaluator
This class exposes two functions. `evalNode` take an AST node and evaluates it down to simplest terms. `eval` takes an array of AST nodes and calls evalNode on each of them. I don’t think we’re quite ready to be producing HTML yet so let’s not get ahead of ourselves.
преди 6 години
Dylan Baker
76c6eac9b5
Implement conditionals
Currently I'm relying on JavaScript's semantics
around truthiness. I think I'm going to retain
that ease of use (i.e. `(if list #t #f)` should
return true if the list has more than 0 elements,
etc) but I want to specify that behavior myself.
преди 6 години
Dylan Baker
3e5a873054
Prettier :/
преди 6 години
Dylan Baker
b83126524d
Make all functions lambdas for now
преди 6 години
Dylan Baker
bffecce670
Add lambdas
преди 6 години
Dylan Baker
90d84dbb6f
Prettier
преди 6 години
Dylan Baker
4b3ce29206
Remove resolver and compiler, add define to parser
преди 6 години
Dylan Baker
497af0aa34
Implement test helper functions
преди 6 години
Dylan Baker
f77ad26a69
Allow empty strings
преди 6 години
Dylan Baker
581c99f794
Rewrite AST and compiler to be more normal
преди 6 години
Dylan Baker
64e2ab8eb0
Implement some very basic error handling
It's a little hacky and not very clean but it's
working for now.
преди 6 години
Dylan Baker
d46f25c589
Run prettier
преди 6 години
Dylan Baker
564b4808e9
Allow using variables as attribute values
преди 6 години
Dylan Baker
709986560e
First try at the compiler
No variables or conditionals or anything yet, just
the basic ability to turn s-expressions into HTML.
преди 6 години
Dylan Baker
f7d7e9f46f
Fix up some stuff and add a test for parser
преди 7 години