Hacker News new | ask | show | jobs
by coroutines 3740 days ago
I primarily work in Coffeescript.

A lot of the things I love from Coffeescript got picked up in ES6/ES7, so it wasn't a big deal for me to transition. :-) (sad that Coffeescript will decline when it has more to offer..)

I had to work on an ES5 project recently and I was almost in tears because I couldn't use a computed property. (someObject[someValue]) I wound up writing a switch to assign the correct index, and I felt very sad about my life.

Someday people might not learn about how we kept things private in closures. They'll have a `private` keyword to make their transpiler do it for them. It has become less important to directly know how inheritance works, so people might be happy having a `class` syntax. There are a few times I've wanted to make an object fallback on another without making an official "class", so maybe this will be secret juju someday.

I tend to view language development like overfilled buckets. When JS becomes as complicated and unwieldly as C++, we'll spill into the next bucket in an effort to create another simple language.

1 comments

I had to work on an ES5 project recently and I was almost in tears because I couldn't use a computed property. (someObject[someValue]) I wound up writing a switch to assign the correct index, and I felt very sad about my life.

Just checking -- is this a parody of a JavaScript hipster, or do you seriously get depressed by writing a switch statement?

I can't speak for the gp, but I get irritated when I can't use newer language features... pretty much everything I use is in stage-2 supported via babel at this point, so pretty happy...

That said, when I have to work in an older project without babel, it gets cumbersome to change into doing things the old way. You can get really used to arrow functions and async... Working without cjs modules is harder still. There are many layers of convenience, and it's easy to get used to them.

I might have been a little dramatic. :3