News for hackers. Stuff that matters.
Re:Announcing CoffeeScript 2 by tootie on Monday September 18, 2017 @04:33PM (#15279267)
I honestly think both ES6, Coffee and the like are going in the absolute wrong direction. Every release replaces more keywords with punctuation marks. That's the reason the community abandoned Perl. How much productivity do I gain by replacing "function()" with "() =>"? Round and round we go.

Before anyone tells me, yes I know the semantics are slightly different, but muddling the semantics with arcane syntax is not an optimal solution.

Re:Announcing CoffeeScript 2 by awinder on Monday September 18, 2017 @09:18PM (#15281082)
I’m going to tell you anyways :-D. function() { ... }.bind(this) is the correct comparison to () => { ... }, which is not only a productivity gain but a readability gain.
Re:Announcing CoffeeScript 2 by city41 on Monday September 18, 2017 @05:26PM (#15279746)
I think the comparison to perl isn't fair. It's pretty accepted that () => is a function type construct. It mimics lambdas and function calls in many other languages. Perl did really crazy stuff like storing regex results in obscure global variables.

As for () =>, it can make a big difference in scenarios like `myArray.map(a => a.foo)` versus `myArray.map(function(a) { return a.foo })`

Re:Announcing CoffeeScript 2 by fineline on Monday September 18, 2017 @06:28PM (#15280252)
>> Every release replaces more keywords with punctuation marks.

I can't think of any other examples. Closures get used heavily in JS and arrow functions do make their use quicker and more concise, as well as fixing `this`. Compared to other languages like Scala, OCaml, Elm and Haskell, with symbols for functional combination and pipelining, pattern matching, and whatever you call the thing where you can miss out parameters and use underscores in function bodies in Scala ... JS is relatively light on symbols.