Jeremy Ashkenas
129e950c59
Fixing naked chained existential checks -- the associativity recently got reversed.
2010-08-14 16:33:20 -04:00
Jeremy Ashkenas
c71f2794eb
Fixing compound assignment as a right-hand sub expression of a larger operation. Invalid in JS, valid in Coffee.
2010-08-14 14:43:25 -04:00
Jeremy Ashkenas
fd6e9a1e66
Adding support for compound assignment to indented implicit objects.
2010-08-11 23:14:50 -04:00
Jeremy Ashkenas
8c45aa480b
Reduced the time it takes to build the grammar from 80 seconds to 15, by consolidating Operation terminals by precedence level.
2010-08-11 23:04:33 -04:00
Jeremy Ashkenas
ba02ebc3dc
Fixes Issue #603 -- a longstanding precedence issue involving prefix vs postfix if and unless, involving using the entire single-line if statment as an expression.
2010-08-11 21:28:22 -04:00
Jeremy Ashkenas
398ec3be5a
Issue #602 . Adding JS's Bitwise Assignment operators.
2010-08-11 19:24:59 -04:00
Timothy Jones
c9421cbfcd
Implement @-prefixed parameters.
2010-07-28 17:54:36 +12:00
Jeremy Ashkenas
051a863ff5
adding slightly optimized syntax for range comprehensions that could care less about the index variable. Issue #547
2010-07-27 22:38:38 -04:00
Jeremy Ashkenas
8d544ce80b
Adding anonymous class support (gets a temporary variable for a name.) Issue #548
2010-07-27 22:05:55 -04:00
Jeremy Ashkenas
27e5c42023
fixing some implicit object parses for issue #541
2010-07-25 17:46:08 -07:00
Jeremy Ashkenas
a0b2b78962
adding nice support for fancy implicit hashes
2010-07-24 23:52:02 -07:00
Jeremy Ashkenas
d1ffffab04
Using an experimental version of new optional-brace object literals.
2010-07-24 23:42:37 -07:00
Jeremy Ashkenas
88847df70b
tests are now passing on symbology
2010-07-24 22:23:37 -07:00
Jeremy Ashkenas
989d539af3
adding no-argument super calls.
2010-07-18 14:46:21 -04:00
Jeremy Ashkenas
72c4efbc39
adding a new comprehension 'for all key, value of object', which compiles to the naked JS for..in, including enumerable properties inherited from prototypes.
2010-07-15 21:18:35 -04:00
Jeremy Ashkenas
1c7d51a2c4
fixing issue #485 , unary minus following an existential operator.
2010-07-10 11:27:43 -04:00
Jeremy Ashkenas
e281133f12
fixing empty catch clauses ... Issue #470
2010-07-04 12:50:04 -04:00
Jeremy Ashkenas
77a75ed365
adding passed-through block comments back to the grammar/lexer/rewriter/nodes ... thanks, Trevor Burnham.
2010-07-01 21:26:33 -04:00
Jeremy Ashkenas
364ec2a694
better syntax errors for tokens-not-in-the-grammar. Coming soon to a Jison near you (hopefully)
2010-07-01 20:40:08 -04:00
Jeremy Ashkenas
5ca5a504a4
allowing empty bodies in try blocks and in catch blocks
2010-06-30 20:53:09 -04:00
Jeremy Ashkenas
7d79d73b58
allowing paren-less instance creation, a la 'new Class'
2010-06-29 21:03:50 -04:00
Jeremy Ashkenas
e56af4967c
removing our vendor'd copy of Jison ... you should install it from NPM now.
2010-06-28 00:26:45 -04:00
Jeremy Ashkenas
3881324007
cleaning up the grammar rule for Super
2010-06-27 16:50:31 -04:00
Jeremy Ashkenas
ec570c46bf
Big commit. First draft of stripping comments from generated JS output. Issue #41
2010-06-27 12:59:54 -04:00
Jeremy Ashkenas
f7345ffaac
removing extensions from CoffeeScript
2010-06-26 13:36:31 -04:00
Jeremy Ashkenas
0fcfb80be4
switching 'a in b' to 'a of b', and adding an array presence check for 'a in b'.
2010-06-21 23:51:12 -04:00
Jeremy Ashkenas
38a9b7166b
Adding TrevorBurnham's suggestion for 'a not in b'
2010-06-21 22:25:28 -04:00
Jeremy Ashkenas
e14f4c5db1
First draft of switching the CoffeeScript Compiler over to camelCase. Pour one on the ground for underscores...
2010-06-12 19:05:13 -04:00
Jeremy Ashkenas
969740a263
slight simplification to if/else in the grammar.
2010-06-12 13:53:11 -04:00
Jeremy Ashkenas
0222d90fa3
adding a 'loop' keyword to CoffeeScript. Takes an expression or a block. Runs it until you break or return out.
2010-06-12 12:15:53 -04:00
Jeremy Ashkenas
c2d1ae06c5
removing the <- bind operator from CoffeeScript...
2010-06-12 11:00:56 -04:00
Jeremy Ashkenas
676e893c14
reworking parser for more permissive non-comma-separated array elements.
2010-06-09 00:37:23 -04:00
Jeremy Ashkenas
59de6b505a
ahh, finally. switched up our Jison configuration to provide better syntax errors. Now you get the unexpected token, instead of the expected one.
2010-06-01 20:21:12 -04:00
Jeremy Ashkenas
45f442bd73
allowing Klass::['dynamic-property'] syntax. Issue #392
2010-05-31 22:32:43 -04:00
Jeremy Ashkenas
8aceef20e1
Adding initial implementation of here-comments (block comments) Issue #368
2010-05-12 20:56:44 -04:00
Jeremy Ashkenas
7e3c71ed19
Allowing more flexible linebreaks/indentation within object literals.
2010-05-12 18:28:40 -04:00
Jeremy Ashkenas
cd6ee373ff
enabling condition-less switches.
2010-05-10 22:57:51 -04:00
Jeremy Ashkenas
1a03e98057
making 'while' and 'until' have the same associativity and precedence as 'for', #356
2010-05-04 23:37:03 -04:00
gfxmonk
c8e0f8b149
Cleaned up IfNodes
...
- renamed rewrite_condition() to switches_over(),
and @switcher to @switch_subject
- removed unused else_body constructor parameter, as well
as unnecessary push() method
- ensure both @body and @else_body are always Expressions
(previously they could be either Expressions or IfNode)
2010-05-02 00:39:34 +10:00
Jeremy Ashkenas
adbcd320b2
adding until loops as the inverse of while loops
2010-04-28 22:08:00 -04:00
Jeremy Ashkenas
17ba44056e
changing 'filter' to 'guard' to get around Express' clobbering of Object.prototype.
2010-04-28 21:46:47 -04:00
Jeremy Ashkenas
b746c9018e
adding 'unless' blocks
2010-04-27 19:35:15 -04:00
Jeremy Ashkenas
d62baf5a5d
Merge branch 'for_destructuring' of git://github.com/StanAngeloff/coffee-script
2010-04-26 23:34:07 -04:00
Stan Angeloff
2a3a713811
Allowing pattern matching within for..loops
2010-04-26 21:35:35 +03:00
Tim Jones
8950c3c4c8
Fixing invalid pattern matching and object creation.
2010-04-26 15:54:47 +12:00
Jeremy Ashkenas
a894db35fd
Got the DRY object pattern matching style working properly, from Harmony. {name, age}: person now works correctly.
2010-04-25 22:21:53 -04:00
Jeremy Ashkenas
328a14014c
eliminating the IndentedAssignList nonterminal.
2010-04-25 21:22:29 -04:00
Jeremy Ashkenas
315a2c63fa
simplifying the grammar by replacing all of our trailing comma rules with an OptComma nonterminal.
2010-04-25 21:17:46 -04:00
Jeremy Ashkenas
49824ce1a6
removing yytext mentions for real this time.
2010-04-21 23:21:48 -04:00
Jeremy Ashkenas
72e6e828f1
new version of Jison vendored ... rebuild the grammar, tests pass.
2010-04-21 22:52:20 -04:00