Jeremy Ashkenas
|
94bc7c1f92
|
putting in a special check for returns within array comprehensions -- not very nice
|
2010-01-04 01:06:31 -05:00 |
|
Jeremy Ashkenas
|
69283fcadd
|
fixing a nasty little bug with not dup'ing a string in Scope.rb, causing later functions to start their free_variables where previous functions left off, because they shared their ancestor's @temp_variable string
|
2010-01-04 00:16:38 -05:00 |
|
Jeremy Ashkenas
|
672dd70bdb
|
more underscore examples raised a slight bug with a lexing ambiguity between leading whens (in switches), and trailing whens (in comprehensions) -- made two different tokens to distinguish them
|
2010-01-03 22:25:38 -05:00 |
|
Jeremy Ashkenas
|
cb1815885c
|
adding a statement-as-expression test, and returning null from while loops, if asked
|
2010-01-03 18:58:34 -05:00 |
|
Jeremy Ashkenas
|
8e6486a1d7
|
logic error in Expressions was causing over-compilation by a factor of the depth of the tree
|
2010-01-03 18:47:23 -05:00 |
|
Jeremy Ashkenas
|
97f16c0e9c
|
fixing comment-within-objecta-and-array-literal printing for the new expression regime.
|
2010-01-03 18:35:03 -05:00 |
|
Jeremy Ashkenas
|
56015bd23f
|
subtle call order bug was preventing variable declarations
|
2010-01-03 18:22:10 -05:00 |
|
Jeremy Ashkenas
|
3724778989
|
lowering the precedence of if/else/while
|
2010-01-03 18:11:53 -05:00 |
|
Jeremy Ashkenas
|
bb0dfa5cd4
|
removing the silly newlines from comments
|
2010-01-03 18:07:03 -05:00 |
|
Jeremy Ashkenas
|
6160fe3c17
|
beautiful -- all examples, tests, and docs are now compiling without JSLint warnings
|
2010-01-03 16:32:59 -05:00 |
|
Jeremy Ashkenas
|
099944e0aa
|
All execution tests are now passing with statements everywhere
|
2010-01-03 15:59:33 -05:00 |
|
Jeremy Ashkenas
|
4814d5baa5
|
more progress -- you can wrap parentheses around statements now
|
2010-01-03 15:13:59 -05:00 |
|
Jeremy Ashkenas
|
78c4957ba8
|
first rough rough rough draft of kamatsu's closure suggestion -- test.coffee runs, but probably nothing else
|
2010-01-03 13:59:17 -05:00 |
|
Jeremy Ashkenas
|
de4eddcad4
|
bumping version numbers to 0.2.0 in anticipation of release soon-ish
|
2010-01-03 11:01:50 -05:00 |
|
Jeremy Ashkenas
|
ba3c5298f7
|
adding a block test and using PARAM_SPLAT to remove the last shift/reduce conflict
|
2010-01-03 10:46:37 -05:00 |
|
Jeremy Ashkenas
|
21a0cc83ae
|
Adding kamatsu's proposed block literal syntax
|
2010-01-03 10:19:39 -05:00 |
|
Jeremy Ashkenas
|
7ee5be674d
|
adding splice literals, with tests
|
2010-01-02 00:20:24 -05:00 |
|
Jeremy Ashkenas
|
38520bfece
|
rebuilding narwhal uncovered a bug with named functions
|
2010-01-01 22:00:34 -05:00 |
|
Jeremy Ashkenas
|
34add7d7bf
|
adding consistent highlighting to variable assignment, whether functions or values
|
2010-01-01 17:11:48 -05:00 |
|
Jeremy Ashkenas
|
75d9e23df4
|
better existence test, with tests
|
2010-01-01 12:41:55 -05:00 |
|
Jeremy Ashkenas
|
ff80f8d423
|
adding the notion of existence -- postfixing an expression with a question mark will check if to see if it's not null or undefined
|
2010-01-01 12:31:05 -05:00 |
|
Jeremy Ashkenas
|
3489eec6ee
|
commenting the lexer a bit more
|
2010-01-01 12:11:35 -05:00 |
|
Jeremy Ashkenas
|
2f69bc1708
|
expanding the list of tokens that regexes may not follow, according to the Mozilla JS 2.0 docs
|
2010-01-01 12:08:36 -05:00 |
|
Jeremy Ashkenas
|
0f81dbe913
|
adding steps to range comprehensions
|
2010-01-01 11:54:59 -05:00 |
|
Jeremy Ashkenas
|
e30a267c9d
|
fixing precedence order, so that you can nest range comprehensions
|
2010-01-01 11:19:57 -05:00 |
|
Jeremy Ashkenas
|
305f883eab
|
making range comprehensions compile safely, even when you assign to the same variable as your endposts.
|
2010-01-01 10:55:43 -05:00 |
|
Jeremy Ashkenas
|
a93a570603
|
allowing indentation within function calls
|
2010-01-01 10:38:28 -05:00 |
|
Jeremy Ashkenas
|
caf9d627cb
|
allowing expressions within range literals
|
2010-01-01 10:15:22 -05:00 |
|
Jeremy Ashkenas
|
ad5b5fa458
|
fixing the regex lexer to make it less agressive when we know it can't possibly be a regex
|
2010-01-01 09:49:18 -05:00 |
|
Jeremy Ashkenas
|
41056ca2bd
|
fix for multiple splats in a function call
|
2009-12-31 20:02:15 -05:00 |
|
Jeremy Ashkenas
|
409283a30f
|
adding splats as arguments to function calls
|
2009-12-31 19:52:13 -05:00 |
|
Jeremy Ashkenas
|
26c89cef06
|
reserving variables for splats the regular way, not through a custom 'var' declaration
|
2009-12-31 18:03:39 -05:00 |
|
Jeremy Ashkenas
|
1d2bb3b2be
|
adding splats to function definitions
|
2009-12-31 17:50:12 -05:00 |
|
Jeremy Ashkenas
|
f299972713
|
expressions nested in expressions made for some indentation issues -- statements are now responsible for their own leading indentation
|
2009-12-31 16:50:46 -05:00 |
|
Jeremy Ashkenas
|
7ec91a1ee5
|
enabling multi-line array and object comprehensions
|
2009-12-31 16:09:27 -05:00 |
|
Jeremy Ashkenas
|
07d0044718
|
using push for comprehension results so that it works with object keys, and adding a test for object comprehensions
|
2009-12-31 15:03:32 -05:00 |
|
Jeremy Ashkenas
|
00538bd62c
|
adding weepy's suggestion to use (for .. in) for array comprehensions, which means that they're now object comprehensions as well
|
2009-12-31 14:52:14 -05:00 |
|
Jeremy Ashkenas
|
4e8a12d70d
|
done commenting the rewriter
|
2009-12-31 13:45:07 -05:00 |
|
Jeremy Ashkenas
|
edf1fc769f
|
detailed scan_tokens so that the calling function can indicate the number of spaces to move forward (or backward) in the token stream
|
2009-12-31 13:43:24 -05:00 |
|
Jeremy Ashkenas
|
2231d67cef
|
making assignment token detection a regex like all the others
|
2009-12-31 13:26:38 -05:00 |
|
Jeremy Ashkenas
|
a376e7f4a3
|
pulled out all token-stream-rewriting logic into the CoffeeScript::Rewriter -- let the lexer be simpleminded
|
2009-12-31 13:22:33 -05:00 |
|
Jeremy Ashkenas
|
e481a39a0d
|
making all functions named functions, if children of an immediate assignment
|
2009-12-30 23:13:22 -05:00 |
|
Jeremy Ashkenas
|
8762162dff
|
adding proper auto-newline escaping
|
2009-12-30 22:49:25 -05:00 |
|
Jeremy Ashkenas
|
a6539a030c
|
allowing any manner of indentation in the comments, by adjusting them in the lexer
|
2009-12-30 22:24:40 -05:00 |
|
Jeremy Ashkenas
|
942572d081
|
don't print the confusing indentation numbers when raising ParseErrors for indentation
|
2009-12-30 21:57:03 -05:00 |
|
Jeremy Ashkenas
|
dba8439425
|
the underscore example parses now -- added line number information to parenthetical nodes
|
2009-12-30 21:44:51 -05:00 |
|
Jeremy Ashkenas
|
774e3d3e31
|
moving the newline escaping detection up higher so indents don't overrule it
|
2009-12-30 21:41:01 -05:00 |
|
Jeremy Ashkenas
|
cae0b1a038
|
lex indents with higher precedence than comments
|
2009-12-30 21:20:30 -05:00 |
|
Jeremy Ashkenas
|
fd83759ef4
|
more fiddling with the lexer -- the indentation is super fragile
|
2009-12-30 21:11:54 -05:00 |
|
Jeremy Ashkenas
|
49714656e1
|
rolling back MULTI_DENT regex
|
2009-12-30 20:41:32 -05:00 |
|