36df70dba1
Move IO into a separate module.
2014-02-04 08:44:59 -08:00
a6fd0b2dd2
Move SymbolTable to wren_utils.
2014-01-01 20:57:58 -08:00
3fd7fa56fb
Inline wrenObjectToValue().
...
Seems to give a slight speed bump. Inlining the wrenIs___
functions doesn't seem to help (may make it a bit worse.)
2013-12-14 11:34:49 -08:00
157944aa27
Get closures working!
...
In the process, I had to change the grammar. There is now a strong
separation between statements and expressions. The code was just wrong
before when it popped locals at the end of a block scope because there
could be temporaries on the stack if the block was in expression
position. This fixes that.
Still need to implement closing over `this`.
2013-12-04 07:43:50 -08:00
8c9ce024ee
Move debug code into separate module.
2013-11-29 16:17:33 -08:00
715fecdc7c
Rename files and add some docs.
2013-11-28 08:11:50 -08:00
9d9f9c11ca
Clean up "primitive" code.
2013-11-28 08:00:55 -08:00
af6b73208c
Start defining actual API for embedding Wren.
2013-11-25 07:47:02 -08:00
64509a4f61
NaN tagging!
...
This plus moving some variables into locals in the interpreter loop
gets the fib benchmark within 25% of Lua!
2013-11-17 14:20:15 -08:00
bc5415e486
Move value/object stuff to separate files.
2013-11-16 17:51:30 -08:00
509f62fdad
Ditch man file.
2013-11-13 07:15:10 -08:00
7e2c200e0d
Garbage collection!
2013-11-12 08:32:35 -08:00
6ce2c7cec5
Move primitives to separate file.
2013-10-27 11:28:15 -07:00
0b1c42a818
Don't heap allocate tokens.
2013-10-22 13:25:39 -07:00
dd8998db24
Start sketching out single-pass compiler.
2013-10-22 12:16:39 -07:00
2f6a6889f1
Initial commit.
2013-10-22 11:22:22 -07:00