Re:ECMAScript 6
by pornel on Sunday February 22, 2015 @04:34PM
(#9091216)
ES6 is especially nice with D3.js:
becomes:
And:
[ Parent
| on HN ]
I've been writing TypeScript exclusively for so long, I forget most devs are still using the old syntax.
Re:ECMAScript 6
by brianshaler on Sunday February 22, 2015 @05:36PM
(#9091525)
Same here, except with CoffeeScript.
But coffeescript doesn't even look like JavaScript. How could you confuse them?
Re:ECMAScript 6
by brianshaler on Tuesday February 24, 2015 @11:39AM
(#9101698)
Several ES6 features very much resemble the few ways coffeescript syntax differs from older versions of ecmascript. Arrow functions, destructured assignment, string templates.
In context, we were commenting on this:
.attr('transform', d => `translate(${d.x + 1} 0)`)
which looks pretty similar to the coffeescript counterpart: .attr 'transform', (d) -> "translate(#{d.x + 1} 0)"
Five subtle differences, but it shows how the things that are new/different about ES6 are more similar to typescript and coffeescript than ES5.In the specific D3 examples above, the advantages of ES6 have long been available in CoffeeScript.
Re:ECMAScript 6
by lucidrains on Sunday February 22, 2015 @06:56PM
(#9091808)
Me too! I love Coffeescript, so glad we can finally build things with ecmascript 6!
Agree. It makes writing functional code (and functional-style code) much better looking.
Careful though: Libraries like jQuery and D3 can and/or do rebind `this` and that can be a gotcha in both TypeScript and straight ES6. You can end up having to mix both declaration styles, which is gross.
Readable lambdas are always a plus for me, glad to see this change.