Commit Graph

66 Commits

Author SHA1 Message Date
Timothy Jones
2ddae698bb Using a typeof check in scope. 2010-10-25 14:42:37 +13:00
Jeremy Ashkenas
6a9c4380f3 Fixing scope.coffee -- we can't use a JS object as a hash that has to contain the word 'hasOwnProperty' 2010-10-24 21:23:32 -04:00
Jeremy Ashkenas
6347849cd0 Switching parenthesized side in comprehensions. 2010-10-24 14:11:09 -04:00
Jeremy Ashkenas
3a16677ebf typo 2010-10-24 13:38:00 -04:00
Jeremy Ashkenas
7596e3a157 putting back arguments. 2010-10-21 00:07:21 -04:00
Jeremy Ashkenas
bb080130b9 tweaks to scope 2010-10-20 23:09:06 -04:00
satyr
b0a4b7ab85 scope: refactored 2010-10-20 17:13:43 +09:00
Timothy Jones
8d6b909b93 Removing the utterly pointless splice in scope for the much more reasonable assignment. 2010-10-20 19:51:53 +13:00
Timothy Jones
15cfe8ebf1 Restoring garbage collection. 2010-10-20 12:58:59 +13:00
Timothy Jones
8c4a48d9d0 Adjusting refactor to better emulate map. 2010-10-20 12:51:34 +13:00
Timothy Jones
8fff6e9baf Refactoring scope to use an array instead of an object, to make the IE bugfix significantly tidier. 2010-10-20 12:36:50 +13:00
Timothy Jones
7342058e64 Comment fix. 2010-10-20 12:05:34 +13:00
Timothy Jones
083fc61dfb Fixing IE DontEnum bug in Scope. Ignoring everywhere else. 2010-10-20 12:02:38 +13:00
Jeremy Ashkenas
69d2048ccc Re-enabling garbage collection of tempvars, only at function boundaries. 2010-10-06 21:19:05 -04:00
Jeremy Ashkenas
59d6e59f97 Fixing Issue 730 -- and removing garbage collection of tempvars (which was totally unsafe.) 2010-10-06 20:54:08 -04:00
satyr
8cdee9c0f4 ensured arguments in each scope 2010-10-02 08:21:34 +09:00
satyr
e0ed254252 helpers: now directly exported 2010-09-25 09:29:44 +09:00
Jeremy Ashkenas
7e5db250d3 Merge branch 'master' of git://github.com/StanAngeloff/coffee-script 2010-09-21 08:06:12 -04:00
satyr
e4b7d06f35 removed browser specific hacks from src/* by making "rake browser" provide fake require and exports 2010-09-21 18:37:44 +09:00
Stan Angeloff
921ab3ce68 Using old temporary variable name generation for single-letter types
(e.g., i, j, k, and so on).
2010-09-21 07:53:52 +03:00
Jeremy Ashkenas
a16594ed7b Merging in Stan's temporary_junk improvements. 2010-09-20 22:13:08 -04:00
Jeremy Ashkenas
f7fce3cd68 tweaking compiled tempvar names to satisfaction. 2010-09-20 21:56:18 -04:00
Stan Angeloff
31441868e0 Allowing temporary variables to be reused. 2010-09-19 19:34:27 +03:00
Stan Angeloff
d568b56c5e First attempt at allowing temporary variables to be reused. 2010-09-19 17:47:26 +03:00
Stan Angeloff
3ab0c12bf1 Don't store tempVars as we can get the next available one from scope. 2010-09-19 17:03:45 +03:00
Stan Angeloff
ed74f42323 Refactoring temporary name generation in a separate method, no
functional changes.
2010-09-19 16:18:01 +03:00
Stan Angeloff
65fa0411b4 Part of previous commit: updating how temporary variables are generated.
We no longer need to store the name of the last generated variable,
instead we store the index.
2010-09-19 15:50:17 +03:00
Stan Angeloff
408833daef Removing code added during the migration. freeVariable(..) is called with
a `type` at all times.
2010-09-19 15:37:26 +03:00
Stan Angeloff
fe68261bc2 Added generator for custom free variable types, e.g., '_cache',
'_cache2', and so on.
2010-09-19 14:55:19 +03:00
Stan Angeloff
1f2c6c77fd s/tempVars/tempVars.general/ This should allow us to store more than one
category of temporary variables.
2010-09-19 14:36:37 +03:00
Jeremy Ashkenas
fa95f743f3 Fixing Issue #643. Be a little bit safer about declaring block variables as close to the block scope as possible. 2010-08-24 22:19:53 -04:00
Jeremy Ashkenas
87693d84cb Updating Underscore to 1.1.0, fixing a hasOwnProperty glitch in Scope, and a double-semicolon bug in ParentheticalNode. 2010-08-21 08:30:22 -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
d624310be1 waypoint commit with both # and $ performing interpolation. Issue #544 2010-07-26 23:08:09 -04:00
Jeremy Ashkenas
d1ffffab04 Using an experimental version of new optional-brace object literals. 2010-07-24 23:42:37 -07:00
Jeremy Ashkenas
492ee57b8f finished basic port to equality of the compiler 2010-07-24 21:36:21 -07:00
Dan Holmsand
6bc7b56e6e Make sure variables named e.g. "constructor" are declared with var 2010-06-16 12:54:53 +02: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
835ecac8db simplifying some unecessary interpolated expressions into interpolated values. 2010-04-11 16:57:53 -04:00
Jeremy Ashkenas
864275f07e removing __range, and all the slice behavior it enabled. If you can't do array[-1], then you shouldn't be able to do array[0..-1] -- it's just too inconsistent. 2010-03-30 20:06:44 -04:00
Jeremy Ashkenas
998a7c8cb0 more cleanups, added a utility helper function to the codegen 2010-03-30 19:48:37 -04:00
Jeremy Ashkenas
6d7a04228f another reshuffle ... removed utilities.coffee entirely. 2010-03-30 19:42:09 -04:00
Jeremy Ashkenas
4a8c2e8a13 more refactors to utilities ... removing dependencies and the namespacing 2010-03-30 19:27:38 -04:00
Jeremy Ashkenas
f3a60edc5d simplifying the lookup of the top-level scope object 2010-03-30 19:21:14 -04:00
Jeremy Ashkenas
1e1146d61d more utility simplifications 2010-03-30 19:17:40 -04:00
Jeremy Ashkenas
832e1d8cb8 Utilities doesn't need to be a class, and removing __utilities.keys 2010-03-30 19:00:59 -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
matehat
27fb3763b4 A set of improvements on previous code 2010-03-30 16:14:07 -04:00
matehat
da43c70488 Merged in StanAngeloff excellent slice branch, applying recent factoring of utility functions 2010-03-30 15:43:30 -04:00
matehat
1e786d6d8b Removed unnecessary check 2010-03-30 10:58:21 -04:00