News for hackers. Stuff that matters.
Re:Method Combinators in CoffeeScript by raganwald on Monday August 27, 2012 @04:05PM (#4440569)
You're speaking to the first part of my claim, but not the second, namely that JavaScript and CoffeeScript don't separate the idea of a function and a method, which is what allows you to use first-class functional combinators as decorators.
Re:Method Combinators in CoffeeScript by masklinn on Tuesday August 28, 2012 @07:19AM (#4443068)
> JavaScript and CoffeeScript don't separate the idea of a function and a method

Neither does Python, at definition time. All the difference is in the processing performed by the class constructor (`type`) when the class object is created. Before that, it's a bog-standard function.

> which is what allows you to use first-class functional combinators as decorators.

Which is exactly like Python, the original decorators[0][1] predate the syntactic extension by several versions, the original syntax for applying them was:

    def some_method(cls):
        pass
    some_method = classmethod(some_method)
And you could use the exact same syntax to define non-method functions (though not this decorator, of course, as it doesn't make sense for functions)

[0] http://docs.python.org/library/functions.html?highlight=clas...

[1] http://docs.python.org/library/functions.html?highlight=clas...

Re:Method Combinators in CoffeeScript by goblin89 on Tuesday August 28, 2012 @10:36AM (#4443836)
I only intended to comment on the first part. Decided against cutting the quote mid-sentence. (Which led to me learning something new from masklinn's comment. =))