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
Jeremy Ashkenas
1602e0e823
adding complete documentation for the grammar
2010-03-07 11:41:56 -05:00
Jeremy Ashkenas
3e3b71724d
making equality left-associative so that our chaining works properly with it.
2010-03-06 23:48:06 -05:00
Jeremy Ashkenas
e977967eb5
implementing the CoffeeScript compiler using interpolation where appropriate.
2010-03-06 13:59:11 -05:00
Jeremy Ashkenas
1c7e4c4203
first draft of adding classes to CoffeeScript
2010-02-27 18:57:45 -05:00
Jeremy Ashkenas
d2d5f649d3
caching the length property lookup for vanilla array comprehensions and rebuilding docs
2010-02-25 23:39:14 -05:00
Jeremy Ashkenas
2a46e13d33
moving print_tokens (the pretty printer) from coffee_script to command_line
2010-02-24 18:56:32 -05:00
Jeremy Ashkenas
10d335ccb1
adding existence soaks for indexed-lookup property accesses: obj?['property']
2010-02-24 00:06:01 -05:00
Jeremy Ashkenas
4eeb8c4bd2
adding conditional while loops with while ... when
2010-02-23 22:53:43 -05:00
Jeremy Ashkenas
7de4caffca
removing a shift-reduce error from the grammar that worked its way in
2010-02-23 21:22:28 -05:00
Jeremy Ashkenas
a64afe6162
fixing the trailing-else-in-switch-getting-sucked-in-bug, Issue 195.
2010-02-22 19:22:09 -05:00
Jeremy Ashkenas
b027b5cf0d
Allowing @[property] syntax.
2010-02-20 20:09:52 -05:00
Jeremy Ashkenas
dd753d3b78
Removing the notion of a ThisNode so that we don't have to worry about the special cases. Fixes Issue 180
2010-02-19 07:51:52 -05:00
Jeremy Ashkenas
a278d8f018
adding an extra pair of braces to the code produced by object comprehensions, so as to squeak by in JSLint's good graces
2010-02-18 20:22:53 -05:00
Jeremy Ashkenas
fbfa12c733
moving 'throw' to a slightly higher level of precedence
2010-02-17 19:35:34 -05:00
Jeremy Ashkenas
2d0ad73af8
reorganizing lib/coffee_script to plain ol' lib
2010-02-17 00:55:56 -05:00