Commit Graph
13 Commits
Author SHA1 Message Date
Tor Andersson f77a6e7e8e Implement value stack and use it in the interpreter.
We can now run simple programs that don't use function calls.
2014-01-14 18:17:06 +01:00
Tor Andersson 4b981faad7 Clean up handling of function declarations / statements / expressions. 2014-01-13 14:56:17 +01:00
Tor Andersson 62fea907a6 Compile logical or/and operators with early termination.
Make the && and || operators right-associative since that generates
better code, and should make no difference in semantics.
2014-01-12 13:39:48 +01:00
Tor Andersson 8a1c1c24ed Add warning function to parser. Warn but accept function expressions
as expression statements.
2014-01-11 18:11:23 +01:00
Tor Andersson f36eb04aee Track newlines properly. 2014-01-11 18:11:23 +01:00
Tor Andersson e23d2070a0 Check future reserved words in parser to allow them as IdentifierName tokens. 2014-01-11 18:11:23 +01:00
Tor Andersson 88abe2c38c Fix parser bugs. 2014-01-11 18:11:23 +01:00
Tor Andersson d9588c2c98 Add UNDEF expression to handle array elisions properly. 2014-01-11 13:03:58 +01:00
Tor Andersson a476ffcc12 Preserve regexp flags. Escape more characters when dumping strings. 2014-01-11 12:47:08 +01:00
Tor Andersson 33c60e4d7b Fix bug. 2014-01-10 23:29:54 +01:00
Tor Andersson effc3ae9ad Add constant folding. 2014-01-10 14:38:01 +01:00
Tor Andersson 3f564db259 Clean split between loader, parser and pretty-printer. 2014-01-10 14:37:57 +01:00
Tor Andersson 8342452b13 Rename files and put stuff in the correct headers. 2014-01-10 14:37:57 +01:00