Jeremy Ashkenas
dfb3a13246
Fixed lingering CoffeeScript Compiler running live in Internet Explorer bugs. Implemented helpers.index_of and removed named functions. Ticket #366
2010-05-14 23:40:04 -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
b5606a247d
adding pattern matching for comprehensions.
2010-04-26 23:46:35 -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
95367a4a63
Fixing silly mistake with the comments.
2010-04-26 16:00:12 +12: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
065bf54094
generated closures should only call() or apply() when necessary.
2010-04-10 14:40:05 -04:00
Tim Jones
de955dacc4
Added Statement to the grammar.
2010-04-06 02:26:23 +12:00
Chris Lloyd
19ed63129e
Interpolated strings are expressions.
2010-04-04 17:05:52 +10:00
Tim Jones
89debc87b2
Removing {@prop: value} from the grammar.
2010-04-04 04:18:29 +12:00
Jeremy Ashkenas
572aa4e98f
reverting the grammar to the pre-slice notation.
2010-03-30 20:11:40 -04:00
matehat
97096696a2
Put back every utility functions on the global scope, automatically prefixed with __ and set them dynamically as reserved on the lexer.
2010-03-30 16:48:43 -04:00
Stan Angeloff
15217c705e
Allowing for negative indices in slice literals.
2010-03-30 14:30:15 -04:00
matehat
9f108e87eb
Removed unused __hasProp assignment and declared Coffeescript a reserved name
2010-03-30 11:20:53 -04:00
matehat
241f6f3068
Applied the utility factoring into a "Coffeescript" object to the core. All tests pass fast.
2010-03-30 09:02:51 -04:00
Jeremy Ashkenas
177ec92c39
adding class methods to class definition syntax, using '@'
2010-03-29 21:43:12 -04:00
Tim Jones
6e0e0767f9
Removed unprocessed values on a for loop from the grammar.
2010-03-29 07:32:01 +13:00
Tim Jones
6df50399a9
Restricted class and extends values to simple assignments.
2010-03-29 06:14:35 +13:00
Tim Jones
7b9a8998cf
Addressing some assignment issues.
2010-03-29 06:06:16 +13:00
Jeremy Ashkenas
7de5253318
removing unused reserved variable 'source var' from range comprehensions
2010-03-27 16:04:47 -04:00
Jeremy Ashkenas
eaf4a71d32
Revert "Added Unix-like piping. Allows chaining of function calls where every succeeding call receives as first argument the result of all preceding expressions."
...
This reverts commit 7ee10e06be .
2010-03-27 15:25:34 -04:00
Jeremy Ashkenas
4dd40034ed
Revert "removing the special case for | or"
...
This reverts commit 9763839ed1 .
2010-03-27 15:25:27 -04:00
Jeremy Ashkenas
9763839ed1
removing the special case for | or
2010-03-27 10:28:08 -04:00
Stan Angeloff
7ee10e06be
Added Unix-like piping. Allows chaining of function calls where every succeeding call receives as first argument the result of all preceding expressions.
2010-03-27 15:49:33 +02:00
matehat
8f3ea1d0c5
Fixed a small bug that happened when having a trailing comma in multiline array and object literals
2010-03-26 14:11:34 -04:00
matehat
b9b87f7d8e
Minor modifications to the grammar to allow a single trailing comma for function call arguments, array literal and object literals. Adjusted tests accordingly
2010-03-26 11:44:25 -04:00
Jeremy Ashkenas
f2ea18b0ba
removing AND OR NOT IS ISNT from the grammar
2010-03-21 22:07:46 -04:00
Jeremy Ashkenas
80230414a2
merging in gfxmonk's major refactor to the way that returns are pushed down into the interior of expressions
2010-03-21 11:28:05 -04:00
gfxmonk
cc3c314988
Cleaned up return logic
...
- ReturnNodes are explicitly added during compilation
- ReturnNode is used instead of scattering "return" throughout
code compilation snippets
- nodes gain a make_return method in order to do the most useful
thing when a return is requested
2010-03-21 22:21:55 +11:00
Jeremy Ashkenas
0c6ee52cfc
merging in matehat's curry branch. cleaning some loose ends up. adding some tests.
2010-03-18 00:42:26 -04:00
matehat
1f87094628
Slightly altered syntax, similar to Underscore's Function#bind form, highly simplified lexing and parsing and no polluted scope. Passing tests included.
2010-03-18 00:19:32 -04:00
matehat
8d098194dd
Added the '<-' currying operator, as heavily discussed in #251 , along with tests.
2010-03-18 00:08:34 -04:00
matehat
33f51d76f4
Added the possibility to end an identifier with '::', refering directly to its prototype.
2010-03-16 17:39:36 -04:00
Jeremy Ashkenas
55cac23976
fixing indentation for prefix while nodes
2010-03-10 20:15:12 -05:00
Jeremy Ashkenas
2a47727641
allowing terminator/comment as a block, so that you can have comment-only blocks
2010-03-10 16:18:17 -05:00
Jeremy Ashkenas
54627f6807
CoffeeScript language extensions are now working.
2010-03-09 23:44:29 -05:00
Jeremy Ashkenas
3d14d362a8
first draft of CoffeeScript language extensions.
2010-03-09 23:04:16 -05:00
Jeremy Ashkenas
4906cf1aff
cleaned and commented the lexer (again) interpolate_string() continues to shrink
2010-03-07 12:47:03 -05:00