Skip to content

Comment on ES6 in Depth: Destructuringparent

Comments

I down voted you, I owe you an explanation.

I really do not like this constant stream of new features in JavaScript

ES6/Ecmascript Harmony was announced seven years back, and has been actively discussed for the last four years. So the constant stream of new features you see are JS engines implementing parts of the standard, which is now in its final shape. ES-Discuss mailing lists* are open for community participation (like someone mentioned below) and is led by people with a lot of experience in their respective focus areas. Every new feature has had to pass through many levels of debates, and have (mostly) been borrowed after being found successful either in other languages or libraries.

I feel like these new features are bloating it, and for what?

De-structuring is fairly easy to grasp, and is not even one of the main draws in ES6. Since the last changes to JS, the environment and therefore expectations have changed a lot: (a) JavaScript is now a server-side technology in a big way, (b) async has become increasingly important, (c) people are writing very complex apps in JS. Without the changes in ES6 (and ES7/8 going forward), developers would have hated working with JS and JavaScript could have slowly died.

If you have been following, you'd notice that JS has a very vibrant community around it. One big reason for that is that they see the language evolving with the technology that surrounds it. Finally, note that all the new enhancements have come without breaking backward compatibility.

* I lurk there, not a contributor. Have learnt a ton from just subscribing to it.

I down voted you, I owe you an explanation.

I do think you might be breaking the guidelines of the site - downvote should not be used just for disagreement, or? - but who cares, you're certainly not the only one ;) In any case, thank you for the explanation! I appreciate it.

As for the rest, I partly agree. I am too late to voice any constructive feedback. It was just a general comment on the direction things seem to be going. And I'd rather not participate in the es-discuss, because JavaScript is not my professional focus any more, so I do not have the time or the required expertise. I understand that my comment seems kind of like taking a passing shit on someone's hard work, I'm sorry about that. I hope everyone takes it as nothing more than what it is - just an opinion ;)

All in all, I feel the language is getting overstretched and overcomplicated. And when I see destructuring, I wonder if it's really worth it. Too much complexity can be a problem.

I did not down-vote you for disagreement, I'm firmly against that. I down-voted because it is misleading (probably unintentionally) to say JS is adding a "constant stream of new features"; rather it is all committee and consensus driven work spanning many years with many, many people participating.

I should exercise more restraint next time. Thanks for your reply.

I do think you might be breaking the guidelines of the site - downvote should not be used just for disagreement, or?

Well, it's not mentioned in the guidelines, and there's a bunch of people who do use downvote to disagree. There's a few posts from PG; one where he says that people upvote to agree so it's understandable that they downvote to disagree, and others where he sees it as a problem to be addressed.

It's probably a good idea for people to upvote any posts they think have been unfairly downvoted. This sometimes happens, but probably not often enough.

Maybe downvotes could be split in two.

1. a downvote button, which is available to everyone, but affects only the ranking on the comment list (no graying out due to too many downvotes)

2. a "flag" button, which is available to people with higher karma and serves for moderating.

...because, it seems perfectly human to want to express disagreement with a downvote. I can totally get it, and would/will probably have a hard time restraining myself ^^

Finally, note that all the new enhancements have come without breaking backward compatibility.

Doesn't string interpolation break from ES5?

"${foo}" means something different in 6 vs 5, right?

Template strings (https://developer.mozilla.org/en/docs/Web/JavaScript/Referen...) use backticks, instead of double/single quotes.

  let a = `${foo}`; //Template string
  var b = "${foo}"; //same as in 5.

I stand corrected. Thanks.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.