1
0
forked from Mirror/wren
Commit Graph

79 Commits

Author SHA1 Message Date
fe48113054 Logical "||" operator. 2013-11-19 18:24:58 -08:00
4266facfda Add IS_FALSE for non-NaN-tag values. 2013-11-19 07:36:59 -08:00
6b87a8400f "&&" operator. 2013-11-19 07:35:25 -08:00
e614e092ed Start getting block scope working. 2013-11-18 09:19:03 -08:00
4d23d58bf1 While statements. 2013-11-17 22:38:59 -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
0c1ce91e80 Make String#contains return a bool. 2013-11-17 10:04:02 -08:00
0181f69dfb Get rid of special handling for call methods. 2013-11-17 09:02:57 -08:00
ee504435f7 Real hello world example. 2013-11-17 08:55:04 -08:00
bc5415e486 Move value/object stuff to separate files. 2013-11-16 17:51:30 -08:00
37fdf88bbe Clean up a bunch of stuff. 2013-11-16 17:41:09 -08:00
2af4cb6169 Get rid of "no value" value type. 2013-11-16 11:54:42 -08:00
8f6f546ab3 Bump default heap size. 2013-11-16 11:43:40 -08:00
462ea3903a Unboxed numbers. 2013-11-16 11:41:29 -08:00
e6f085b7c4 Get rid of boxed null and bools. 2013-11-16 11:35:59 -08:00
01b61c83d7 First phase of changing object representation.
This code is full of hacks and isn't the right representation, but
it gets it so that Value is no longer just a raw Obj*.
2013-11-16 11:26:32 -08:00
1266578a4e Add trivial fib benchmark. 2013-11-14 20:57:56 -08:00
cfb5193ce8 Function parameters. 2013-11-14 18:25:28 -08:00
167e174480 User-defined operators. 2013-11-14 10:59:28 -08:00
f6eadbe3f4 Get rid of mixfix methods (for now at least). 2013-11-14 09:21:58 -08:00
a24f29002d Better parsing error messages. 2013-11-13 23:06:53 -08:00
5ac4087d0c Some design notes. 2013-11-13 17:09:55 -08:00
85d9bffa08 Block comments. 2013-11-13 17:09:47 -08:00
27a652e565 Start sketching out inheritance. 2013-11-13 11:05:03 -08:00
509f62fdad Ditch man file. 2013-11-13 07:15:10 -08:00
9d4599f6e6 Unary operators and variable assignment. 2013-11-13 07:10:52 -08:00
7e2c200e0d Garbage collection! 2013-11-12 08:32:35 -08:00
0339bcdeca Use object conversion macros consistently. 2013-11-10 14:21:14 -08:00
915ecb4e58 Static methods. 2013-11-10 11:46:13 -08:00
2f241e2225 Metrics for tests. 2013-11-10 11:12:38 -08:00
f19dd64f8b Floating point number literals. 2013-11-09 21:32:57 -08:00
3cdabcb8c7 "%" operator for numbers. 2013-11-09 21:01:18 -08:00
a1f10786ef "this" expressions. 2013-11-09 15:42:23 -08:00
0cc5524249 Generate correct code for locals. 2013-11-09 11:38:01 -08:00
a2f0e41bcb Method parameters. 2013-11-09 11:18:27 -08:00
166d74930f "is" operator. 2013-11-07 17:07:32 -08:00
55e433f980 Reorganize the compiler to be bottom-up.
Gets rid of a bunch of forward declarations and shortens the code.
Also makes points of recursion more explicit.
2013-11-07 07:04:25 -08:00
8f6881c6a8 Change syntax for blocks -> fns. 2013-11-06 07:47:47 -08:00
c0c6020292 "block" -> "function".
Moving away from using Smalltalk-style block objects for all scopes.
2013-11-06 06:52:28 -08:00
4ff444b1ab Unskip some working tests. 2013-11-05 20:38:16 -08:00
2e6888364d "null" literal. 2013-11-05 18:22:22 -08:00
3db228eecf Start hacking on "if" expressions. 2013-11-05 15:40:21 -08:00
67356df1f9 "==" and "!=" operators. 2013-11-05 09:57:57 -08:00
c331ce5301 Tweak metrics script. 2013-11-05 07:57:18 -08:00
6000177126 Clean up block and method calling. 2013-11-05 07:56:59 -08:00
dff19bd8c3 Booleans and comparison operators on numbers. 2013-11-03 21:38:58 -08:00
dae0246581 Pratt parsing FTW! 2013-11-03 10:16:14 -08:00
1741bb2693 ".toString" on num and string. 2013-11-01 23:27:28 -07:00
cfa65a6536 Don't require a newline at the end of a file. 2013-11-01 06:57:21 -07:00
70f6d61cca Start hacking in a REPL. 2013-10-31 22:25:00 -07:00