Hacker News new | ask | show | jobs
by camus2 3266 days ago
> This is mostly symbolic. The annual ECMAScript 'editions' aren't very significant now except as a talking point.

A spec is never symbolic. If a library claims it implements ES2017 then its consumer expects the library to follow the entire spec.

3 comments

Libraries don't implement ES, JavaScript engines do.

And JavaScript engines don't implement ES editions, they implement ES features. These features now have a five stage process ending with their inclusion in the next edition of the language spec.

Most engine vendors want to be on the bleeding edge, so they start implementing features long before they are fully stable.

The reason the editions are symbolic at this point is that they are just snapshots of the collection of features that have reached stage 4 by the time they are published.

The per-feature specs are finalised significantly earlier than the yearly official versions. Nothing practically happens or changes.
True, but in reality such claims almost always have caveats. Like how almost no one supports ES6 imports yet.
To be fair, ES module semantics were not part of ES6. ES6 only defined the syntax. The appropriate semantics for implementing ES modules are currently still not 100% stable last I checked, especially because of Node which had its own module system already that needs to be unified with ES modules somehow without breaking everything or making it awkward.