Jeremy Ashkenas
590c069158
CoffeeScript 0.5.6
2010-03-23 00:18:50 -04:00
Jeremy Ashkenas
cbfe7f5822
fix and tests for half assignments... whew.
2010-03-21 23:24:24 -04:00
Jeremy Ashkenas
895cd88761
almost there with half-assignments
2010-03-21 23:06:04 -04:00
Jeremy Ashkenas
162f6b9d5c
one step at a time
2010-03-21 22:05:49 -04:00
Jeremy Ashkenas
acd9be3863
one step further
2010-03-21 21:46:06 -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
Jeremy Ashkenas
4ec79732f1
merging gfxmonk's cleanups
2010-03-21 10:11:02 -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
a2778bf06d
resolving issues with comments in the middle of unfinished single-line expressions.
2010-03-20 00:58:25 -04: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
5be437deb9
Added some inline docs
2010-03-18 00:08:34 -04:00
matehat
8d098194dd
Added the '<-' currying operator, as heavily discussed in #251 , along with tests.
2010-03-18 00:08:34 -04:00
Jeremy Ashkenas
79e4f30f69
fixing a bug where the Lexer assumed that values would always be strings.
2010-03-17 22:16:18 -04:00
Jeremy Ashkenas
2f97d0d9b1
merging matehat's flexible splats (at any position within argument lists)
2010-03-17 21:15:54 -04:00
Jeremy Ashkenas
d880b8b8f2
adding interpolation to heredocs, using the same rules as for strings
2010-03-17 20:47:27 -04:00
Jeremy Ashkenas
70cfc9500e
pushing docs to the site
2010-03-16 23:18:54 -04:00
Jeremy Ashkenas
61b011cc28
fixing trailing whitespace on the final line
2010-03-16 19:57:39 -04:00
Jeremy Ashkenas
119b80d449
removing fiddling with require.paths from CoffeeScript
2010-03-15 20:39:46 -07:00
Jeremy Ashkenas
60b3103314
using granular helper imports, for nicer within.
2010-03-14 14:58:32 -07:00
Jeremy Ashkenas
75ffb9dc84
stop mixing in helpers (t(ticket #250 ) -- with a test
2010-03-14 14:48:43 -07:00
Jeremy Ashkenas
b306d40bf1
we don't need relative requires for the language
2010-03-14 13:48:58 -07:00
Jeremy Ashkenas
ccb7f63b8a
fixing exports for the browser
2010-03-10 09:47:02 -05:00
Jeremy Ashkenas
3d14d362a8
first draft of CoffeeScript language extensions.
2010-03-09 23:04:16 -05:00
Jeremy Ashkenas
b297510d2b
big refactor -- pulled all helper functions into helpers.coffee to facilitate sharing.
2010-03-09 21:24:30 -05:00
Jeremy Ashkenas
4932d25540
making balanced_string accept an array of delimiters, in hope of using it in the Rewriter
2010-03-09 20:53:56 -05:00
Jeremy Ashkenas
1b4edd0e37
scrubbing all carriage returns from CoffeeScript source before compiling for the benefit of Windows users.
2010-03-08 23:07:26 -05:00
Jeremy Ashkenas
dcb00b4fe8
minor refactors to balanced_string
2010-03-08 22:48:14 -05:00
Jeremy Ashkenas
b33b688373
fixing more bugs in balance/interpolate/regexp/string/etc
2010-03-08 22:25:06 -05:00
Jeremy Ashkenas
4b97b15c0c
more refactors to interpolation
2010-03-08 21:55:06 -05:00
Jeremy Ashkenas
b5af5f66fb
more regexp and string interpolation tweaks
2010-03-08 21:34:10 -05:00
Jeremy Ashkenas
3396dce2bb
waypoint -- going to try to clean up regex_token
2010-03-08 20:57:28 -05:00
Jeremy Ashkenas
3291bd2a4a
removing the 'supress' option from the lexer, just look at the slash.
2010-03-08 20:07:19 -05:00
Jeremy Ashkenas
121f01c06f
merged stan's interpolation_3, a couple of tweaks
2010-03-08 19:43:12 -05:00
Stan Angeloff
81af8f296e
Regular expression interpolations; fixed bug in string interpolations when all tokens were identifiers.
2010-03-08 20:06:51 +02:00
Stan Angeloff
a5f69ef716
Empty expression interpolations evaluate as empty strings now.
2010-03-08 09:31:31 +02:00
Jeremy Ashkenas
71ace9d8d0
allowing naked interpolation of dotted properties. .property
2010-03-07 22:26:25 -05:00
Jeremy Ashkenas
a4f7a5e248
documenting and cleaning up the Rewriter
2010-03-07 14:41:52 -05:00
Jeremy Ashkenas
4906cf1aff
cleaned and commented the lexer (again) interpolate_string() continues to shrink
2010-03-07 12:47:03 -05:00
Stan Angeloff
f74fae58e3
Rewritting lexer.coffee to accept nested string interpolations.
2010-03-07 11:42:52 -05:00
Jeremy Ashkenas
453b43992d
fixing line numbers in errors printed prior to parsing
2010-03-06 16:42:40 -05:00
Jeremy Ashkenas
a5e3617015
Adding a starts() helper to avoid substring() calls for simple matches.
2010-03-06 16:24:06 -05:00
Jeremy Ashkenas
c4ad6d1ee6
minor cleanups to balanced_group -> balanced_token, removing optional escaper (unused), and using it to implement interpolated javascript.
2010-03-06 16:06:47 -05:00
Stan Angeloff
f9cde1b46d
Improving performance by removing call to bound function for every character in a string. Added a third option to \delimited\ to allow custom escape sequences.
2010-03-06 15:53:37 -05:00
Stan Angeloff
83fd84745d
Rewriting string tokenizer; allowing nested double-quoted strings inside expression interpolations.
2010-03-06 15:21:30 -05:00
Jeremy Ashkenas
15b00cb3ca
implementing string interpolation using string interpolation
2010-03-06 13:32:43 -05:00
Jeremy Ashkenas
b4ea43cbd0
waypoint -- starting to implement nodes.coffee with interpolations, and fixing/shortening/combining the lexer implementation to allow identifier interpolations to be interleaved with expression interps
2010-03-05 22:52:28 -05:00
Jeremy Ashkenas
08341286a3
adding back parentheses wrapper around interpolated expressions -- we need it
2010-03-05 21:12:13 -05:00
Jeremy Ashkenas
4c3b0b9a74
allowing @properties to be referenced in naked interpolations
2010-03-05 21:05:31 -05:00
Jeremy Ashkenas
d250e9e9cc
some edits to the interpolation path
2010-03-05 20:42:36 -05:00