Commit Graph

655 Commits

Author SHA1 Message Date
Jeremy Ashkenas
9a7c075e06 parser and test tweaks for whitespace -- tests are coming along 2009-12-30 17:58:27 -05:00
Jeremy Ashkenas
9a946d2ac5 execution tests still pass -- more lexer block insertion and 2 shift/reduces in the grammar now 2009-12-30 15:52:07 -05:00
Jeremy Ashkenas
c822f96145 patching up the lexer and adding a test with trailing whitespace (it was too string for trailing whitespace before) 2009-12-30 15:10:47 -05:00
Jeremy Ashkenas
6ddd808f74 removing dots from whitespace examples 2009-12-30 00:22:27 -05:00
Jeremy Ashkenas
90051e9096 clean up a couple of test errors for whitespace 2009-12-30 00:08:49 -05:00
Jeremy Ashkenas
96803d0129 killing some newlines in the execution tests, to test the lexer's newline suppression 2009-12-29 10:02:19 -05:00
Jeremy Ashkenas
ae112d6087 changing array comprehension filters from 'where' to 'when' to mirror case/when 2009-12-29 09:55:37 -05:00
Jeremy Ashkenas
f44443b58a still some kinks to work out -- mid-expression blocks 2009-12-29 09:18:41 -05:00
Jeremy Ashkenas
3fbb870d01 using 'where' for array comprehension filtering, after kamatsu's suggestion -- execution tests pass now with significant whitespace 2009-12-29 08:52:26 -05:00
Jeremy Ashkenas
cea417de02 moving along with whitespace 2009-12-28 23:08:02 -05:00
Jeremy Ashkenas
bb84a982ce merging in master 2009-12-28 20:06:23 -05:00
Jeremy Ashkenas
aa45456d7d part of the way to supporting multiline array comprehensions -- the grammar and parsing is there -- the code generation is tricky 2009-12-27 21:50:02 -08:00
Jeremy Ashkenas
eeef8d3612 got negative ranges working with (much, much) uglier compiled code 2009-12-26 20:35:43 -08:00
Jeremy Ashkenas
b4250c0f02 that's it for now for significant whitespace -- I really just can't make flexible enough 2009-12-26 19:29:59 -08:00
Jeremy Ashkenas
cc0c92d20d smarter but uglier lexer -- now handles most significant whitespace cases. Clean it up though... (newlines after outdents) 2009-12-26 13:22:53 -08:00
Jeremy Ashkenas
fde9852090 removing no_paren -- can cause order of operations errors 2009-12-26 11:10:59 -08:00
Jeremy Ashkenas
556f8cb68a little more progress on whitespace 2009-12-26 10:49:11 -08:00
Jeremy Ashkenas
08dddb27a0 adding newline escaping, with tests 2009-12-26 09:29:03 -08:00
Jeremy Ashkenas
3c67d54bbe changed bin/coffee-script to bin/coffee 2009-12-26 08:57:13 -08:00
Jeremy Ashkenas
ff78546465 added array comprehensions over ranges 2009-12-26 00:16:40 -08:00
Jeremy Ashkenas
834442148b docs for assignment-as-expression 2009-12-25 23:17:34 -08:00
Jeremy Ashkenas
adaae0ccae major internal reworking -- all variable declarations have been pushed up to the first line of the block scope -- all assignment is now an inherent expression 2009-12-25 22:57:33 -08:00
Jeremy Ashkenas
7c132d65dc started raising syntax errors for parens wrapped around expressions (they used to silently be ignored) 2009-12-25 20:36:22 -08:00
Jeremy Ashkenas
dd5317ebe9 documenting ranges and slices 2009-12-25 16:35:57 -08:00
Jeremy Ashkenas
1ba7c77136 reorganizing test fixtures and adding range literals for array slices 2009-12-25 16:20:28 -08:00
Jeremy Ashkenas
d46bf8ee71 moved the coffeescript extension over from .cs to .coffee -- let's leave C# in peace. Changed array comprehensions to always return their mapped result, even when unassigned 2009-12-25 14:18:05 -08:00
Jeremy Ashkenas
e494d520ea stopped using __proto__, instead, using a variant of goog.inherits for extends and super() 2009-12-25 13:57:47 -08:00
Jeremy Ashkenas
4b5db1181c make equals signs full equals of colons -- you can use them inside of object literals now too 2009-12-25 13:21:17 -08:00
Jeremy Ashkenas
968aeec523 added a test to make sure that chained calls work 2009-12-25 07:16:59 -08:00
Jeremy Ashkenas
73aaf127c8 removed bin/cs in favor of a more comprehensive coffee-script command ... now with --interactive and --run 2009-12-24 23:57:27 -08:00
Jeremy Ashkenas
2d57ee693b the narwhal integration written in JavaScript has been replaced with CoffeeScript, and compiler-generated variable names now start with '__' 2009-12-24 23:09:24 -08:00
Jeremy Ashkenas
d8ceb3b4bb sped up the execution test a good deal by running it all in one pass 2009-12-24 22:29:30 -08:00
Jeremy Ashkenas
6865f5be92 removed dependency on v8 in favor of bin/cs 2009-12-24 22:08:32 -08:00
Jeremy Ashkenas
985e0a080b trading aint for isnt -- let's be serious 2009-12-24 17:21:20 -08:00
Jeremy Ashkenas
95bfb0b45c allowing quoted strings within object assignment, a in JS and JSON 2009-12-24 17:14:53 -08:00
Jeremy Ashkenas
1c83e68292 got extends back in the language -- use it together with super 2009-12-24 16:49:23 -08:00
Jeremy Ashkenas
47812d9ea6 fixing super() calls, thanks to tolmasky 2009-12-24 16:23:23 -08:00
Jeremy Ashkenas
e27756cee8 with a working -n --no-wrap option to disable the top-level function safety wrapper 2009-12-24 15:31:00 -08:00
Jeremy Ashkenas
7f502543d2 added the typeof operater as an OpNode 2009-12-24 11:50:44 -08:00
Jeremy Ashkenas
5d1ec9d2a9 added the instanceof operator to the grammar as an operation node 2009-12-24 11:46:51 -08:00
Jeremy Ashkenas
8d76f4bd3f changing switch/case to switch/when -- it's a better word 2009-12-24 01:33:59 -08:00
Jeremy Ashkenas
849f0e4192 added comprehensive linting to the test suit 2009-12-24 00:49:11 -08:00
Jeremy Ashkenas
fb13a303f2 with a more comprehensive execution test that uncovered some missing spots 2009-12-24 00:41:12 -08:00
Jeremy Ashkenas
b743e3219a added some execution test 2009-12-24 00:12:07 -08:00
Jeremy Ashkenas
ec58d6fda2 got comments within object and array literals working out 2009-12-22 11:50:43 -05:00
Jeremy Ashkenas
65809d08f6 first draft of parsing and printing along comments -- unfortunately, not yet working within objects and arrays 2009-12-22 11:27:19 -05:00
Jeremy Ashkenas
d45643c527 passing through comments as tags on Values, but not printing them out quite yet... 2009-12-22 10:48:58 -05:00
Jeremy Ashkenas
9ba1ffde21 making the each fixture a little more like underscore, and avoiding passing assignment into functions from the outside 2009-12-19 00:45:36 -05:00
Jeremy Ashkenas
6f81ac3684 patched up array comprehensions somewhat. Parens are still a necessary evil, and there's still probably plenty of edge cases 2009-12-18 22:30:09 -05:00
Jeremy Ashkenas
6ba5d45cbe finished the first draft of the parser test 2009-12-18 07:28:26 -05:00