News for hackers. Stuff that matters.
Re:Node.js v6.0 Released by spankalee on Tuesday April 26, 2016 @10:13PM (#11577369)
Wow, a new extension for ES modules? That seems really unfortunate.

Why can't node parse a file to detect if it's a module? The presence of a top-level import or export means it's a module. If it's not, then the parsed file can be kept if the file is also in strict mode. If it's sloppy, it'll have to be re-parsed. Seems like a small penalty if the goal is to enable migration.

Also, why worry about ES modules importing Common JS? Just disallow that and let projects migrate to ES modules bottom-up. Then you don't have to worry about executing a Common JS module to determine what its exports are or circular dependency problems.

Re:Node.js v6.0 Released by bmeck on Tuesday April 26, 2016 @11:22PM (#11577632)
There is a pretty epic thread that I suggest you just read the tail end of https://github.com/nodejs/node-eps/pull/3#issuecomment-21476... . Basically we tried detection via source code as the first proposal; ambiguities at runtime that do not throw errors make it absolutely impossible to do safely, performance problems, and tooling integration problems.
Re:Node.js v6.0 Released by gedy on Wednesday April 27, 2016 @01:46AM (#11578070)
Subjective, but .mjs just sounds horrid..
Re:Node.js v6.0 Released by bmeck on Wednesday April 27, 2016 @01:49AM (#11578081)
We looked at several alternative extensions and it was the least egregious of them: https://github.com/nodejs/node-eps/blob/master/002-es6-modul...