977 Commits

Author SHA1 Message Date
Jeremy Ashkenas
6c997978bc CoffeeScript 0.9.1 is on the books. 2010-08-11 00:40:15 -04:00
Jeremy Ashkenas
12493779b9 fixing Issue #545 ... whitespace-only heredocs. 2010-08-11 00:02:49 -04:00
Jeremy Ashkenas
5bdf78d5ec Fixes Issue #573. Herecomments inside of class literals. 2010-08-10 23:02:24 -04:00
Jeremy Ashkenas
60a4138d50 refactor to simplify scanTokens method in Rewriter. 2010-08-10 22:56:21 -04:00
Jeremy Ashkenas
c2ec40e6ce Fixes Issue #542. Ensure that top-level objects are parenthesized. It's not valid code, but we might as well not SyntaxError out. 2010-08-10 22:16:51 -04:00
Jeremy Ashkenas
87fd05afb0 New implementation of Rewriter#addImplicitIndentation, using Rewriter#detectEnd 2010-08-10 22:05:01 -04:00
Jeremy Ashkenas
45b5bae7d7 New implementation of Rewriter#addImplicitParentheses, using Rewriter#detectEnd 2010-08-10 21:46:46 -04:00
Jeremy Ashkenas
d0b918e083 New implementation of Rewriter#addImplicitBraces -- uses detectEnd.. 2010-08-10 21:13:30 -04:00
Jeremy Ashkenas
3eda5a2e85 prefer the include() helper to 'in', except for array literals. 2010-08-08 17:41:10 -04:00
Jeremy Ashkenas
18d6fd72de First step of the general rewriter refactor. Added a generic 'detectEnd' function which is expression-pair sensitive. Use it to reimplement closeOpenCallsAndIndexes 2010-08-08 17:37:28 -04:00
Jeremy Ashkenas
d286b33601 Fixing closures-generated-within-comprehensions to preserve block local scope for range comprehensions 2010-08-08 10:52:59 -04:00
Jeremy Ashkenas
a749d43897 Use fs.realpathSync instead of something hacky. 2010-08-08 10:05:44 -04:00
Jeremy Ashkenas
08506f160d Adding CoffeeScript as a globally-available object, when invoked from the coffee command-line, only. 2010-08-08 09:54:45 -04:00
Jeremy Ashkenas
b902377304 Fixing Issue #589. Compound assignment to an operation should have lower precedence. 2010-08-08 00:07:00 -04:00
Jeremy Ashkenas
1c903450c8 Merging in Stan's patch for a --require flag that allows you to hook into CoffeeScript compiler events for on 'compile', 'success', and 'failure' ... a better way to extend the language or do growlnotify stuff. Issue #590 2010-08-07 23:33:35 -04:00
Stan Angeloff
b1b78dca47 Add command-line compiler hooks. To invoke, pass a file after -r and listen for any of these events: 'compile', 'success' and 'exception'. Example:
coffee -e -r ./snarl 'Hello!'

Contents of 'snarl.coffee' in the working directory:

    http = require 'http'
    CoffeeScript.on 'exception', (err) ->
      client  = http.createClient 9889, 'localhost'
      request = client.request 'GET', '/?d={"action":1,"applicationName":"CoffeeScript","title":' + JSON.stringify(err.message) + ',"description":' + JSON.stringify(err.stack) + ',"priority":3}'
      request.end()
      err.handled = yes

To examine arguments available for each event (for debugging and getting started), use `puts JSON.stringify arguments`.

See http://nodejs.org/api.html#modules-309 and NODE_PATH for more details on how -r looks for files.
2010-08-07 20:24:37 +03:00
Jeremy Ashkenas
0ada5a7734 Issue #587 ... Removing the Attempted Removal of Erroneous Double Parens. 2010-08-07 08:13:36 -04:00
Jeremy Ashkenas
cc10641f38 Forbidding #interp-style interpolation ... Issue #581 2010-08-07 08:07:44 -04:00
Jeremy Ashkenas
9df3e6a538 first step towards requiring #{ ... } interpolation -- removing naked interps from the compiler. 2010-08-07 08:02:16 -04:00
Jeremy Ashkenas
b1f7d5e33b compile empty coffee files to js anyway. 2010-08-04 23:42:46 -04:00
Jeremy Ashkenas
17bf3b7115 be more flexible about trailing commas in implicit object literals. 2010-08-04 23:25:30 -04:00
Jeremy Ashkenas
ff9af83358 CoffeeScript 0.9.0 2010-08-04 23:14:34 -04:00
Jeremy Ashkenas
5f2326e911 fixing Issue #569. Compiling empty source files to disk with --no-wrap on. 2010-08-04 21:36:03 -04:00
Jeremy Ashkenas
b42045f3f7 regenerating large swathes of the docs 2010-08-03 00:06:34 -04:00
Jeremy Ashkenas
d4ac11cd4f fixing up compout assignment for ?=, which was using a sligtly different path. 2010-07-31 00:42:57 -04:00
Jeremy Ashkenas
8b953bbde6 Fixing Issue #509. Double-evaluation for function calls within IndexNodes as the left-hand-assignment part of a compound-assignment operation. 2010-07-30 23:37:13 -04:00
Jeremy Ashkenas
acd69b1c70 Fixing issue #544. Needed to special case implicit-object-closing for outdents -- it's different than a single-line implicit object with a terminator. 2010-07-30 22:50:35 -04:00
Jeremy Ashkenas
f3caa9292f Fixing Issue #552, Indentation bug with chained calls with nested object literals... 2010-07-30 22:06:22 -04:00
Jeremy Ashkenas
071b527b66 Issue #559, renaming {source} option to {fileName}, on CoffeeScript.compile 2010-07-30 20:37:12 -04:00
Jeremy Ashkenas
ebad1ec552 using double-quotes for auto-quoted object keys and hash accesses. JSON-style. Issue #556 2010-07-30 20:29:05 -04:00
Jeremy Ashkenas
af451bc530 tiny thing. 2010-07-29 21:59:12 -04:00
Jeremy Ashkenas
d1b17df38c better output when trying to force a pure statment to become a return 2010-07-29 21:33:35 -04:00
Jeremy Ashkenas
b18d7fb550 removing the last traces of half-assignments. Issue #541. 2010-07-29 21:23:49 -04:00
Jeremy Ashkenas
5b848fbc47 Merge branch 'master' of git://github.com/Tesco/coffee-script 2010-07-28 20:39:25 -04:00
Jeremy Ashkenas
8522a11bcb getting the whole codebase passing jslint again. 2010-07-28 20:38:16 -04:00
Timothy Jones
d944f81163 Prevented parameter contents from causing unexpected returns in the body. 2010-07-29 12:35:59 +12:00
Jeremy Ashkenas
c67e7fbcea moving nodes.coffee over to use Tesco's new auto-setter style. 2010-07-28 19:34:02 -04:00
Jeremy Ashkenas
a80d8d55c4 merging tesco's branch for issue #535 2010-07-28 07:34:28 -04:00
Timothy Jones
9026069f79 Support for @-prefixed splats. 2010-07-28 18:17:50 +12:00
Timothy Jones
c9421cbfcd Implement @-prefixed parameters. 2010-07-28 17:54:36 +12:00
Jeremy Ashkenas
9d1fd38b69 removing extraneous tempvar declarations from range generation by re-ordering... 2010-07-27 23:39:28 -04:00
Jeremy Ashkenas
a4156b71fa fixing broken range literal expansions. 2010-07-27 23:06:11 -04:00
Jeremy Ashkenas
a59df2cf74 merged in evilpie's fix for faster small range comprehensions 2010-07-27 23:00:26 -04: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
cc7b0f2e8f Allowing classes to be better decorated with implicit calls. Issue #548 2010-07-27 07:03:44 -04:00
Jeremy Ashkenas
9be1453886 bringing back half assignments, but just for 'a = or b' and 'a = and b' 2010-07-26 23:53:03 -04:00
Jeremy Ashkenas
89cd25ab15 finished moving over string and regex interpolation to use '#' instead of '$', Issue #544 2010-07-26 23:31:55 -04:00
Jeremy Ashkenas
d624310be1 waypoint commit with both # and $ performing interpolation. Issue #544 2010-07-26 23:08:09 -04:00
Jeremy Ashkenas
55a0e1d2ff making inline implicit objects more flexible ... can be used with trailing blocks. 2010-07-26 21:39:43 -04:00