Same, the Op/Sec doesn't tell us much about how much time is actually required to compile a significant codebase.
Anyway, I really like these projects (especially since I'm working on an ES6 library), so good luck ! Is it possible to live-compile ES6 scripts, like with Traceur + ES6-Module-Loader ?
Finally, I note that 5to6 doesn't use ES6 itself (when the Traceur build process self-compile, for example).
The only polyfill that is required is Symbol/Symbol.iterator and that's only required if you use a for-of loop. I included the runtimes in the stats specifically to show the disadvantages to having them. I agree with you that it is slightly off and I'll work to improve it.
> Same, the Op/Sec doesn't tell us much about how much time is actually required to compile a significant codebase.
I struggled to find a significant ES6 codebase to test against. If you know of one please let me know!
> Anyway, I really like these projects (especially since I'm working on an ES6 library), so good luck ! Is it possible to live-compile ES6 scripts, like with Traceur + ES6-Module-Loader ?
I'm not familiar with that behaviour. Do you mean automatically watching and compiling on changes?
> Finally, I note that 5to6 doesn't use ES6 itself (when the Traceur build process self-compile, for example).
I may move to bootstrapping eventually although it seems like a hassle when I'm more than complacent to just write ES5.
I mean that a javascript library would act as a gate to live-compile Javascript files on-the-fly.
For example, with ES6-Module-Loader[1], you can do something like this in your browser :
<script>
System.import('mymodule').then(function(m) {
new m.q();
}).catch(console.error.bind(console));
</script>
'mymodule' can be an uncompiled ES6 module, the code will still work fine, because ES6-Module-Loader will get its content (XHR), resolve its dependencies, then pass everything to Traceur.Obviously its main use is for debug purpose (since it does a request for each source file, which won't be great until HTTP 2), but it allows to have a full ES6 workflow, without any visible compilation pass.
One was just posted yesterday and made it to the front page:
"Modern - Virtjs has been made with the full power of ES6, the next iteration of the Javascript programming language. It gives us a pretty simple source code. We're one of the very first libraries to jump aboard!"
I think you mean 6to5.
Counter to the logic of tools like Python's 2to3, I think the more important need is to start writing new code, not porting old code. If you can run new code on the old runtime / interpreter / whatever, you get all the good feels. Porting sucks. New features rock. It just seems like a far superior experience for everyone involved. If happiness is how infomemes spread, assuaging the porting woes couldn't hurt.
I realize there could be concerns involving performance, changes to semantics, etc. that may make back-transliterated (transpiled?) code inherently worse. But if language designers took design of a backwards compiler into consideration when writing the new grammar and semantics, we might see smaller changes brought about in an overall faster pace of iteration.
Just a thought.
This tool is neat. :)
At some point I could imagine building stuff purely inline in ES6 for the evergreen browsers and transpiling to ES5 for IE.