4 ms·
Buble's purpose is that it is supposed to be significantly faster to compile from ES6 to ES5 with minimal configuration, since it actually does things out of th
by Akkuma 10y ago
Buble's purpose is that it is supposed to be significantly faster to compile from ES6 to ES5 with minimal configuration, since it actually does things out of the box.
- Klathmon 10y agoBut that has nothing to do with it's size. If Buble was 10% larger than Babel it would still solve it's purpose.
- Touche 10y agoThat's right, Buble's secret sauce to being fast is that is skips the code generation step, not because of the number of dependencies. Although there definitely is a performance cost to Babel's large dep tree as each of these modules have to be found by Node (which is inefficient). If you use Babel with npm2 it is super slow, because npm2's folder structure causes more lookups.
- sotojuan 10y agoWe ship Babel built in with the AVA[1] test runner and I can confirm `babel-require` is our bottleneck. [1] https://github.com/avajs/ava https://github.com/avajs/ava
- Touche 10y agoYeah, I think that was a bit of a mistake by you guys. AVA's entire point is to be fast but it has the perception of being slow because you've made transpiling a core feature. I would drop that and let people do their own transpiling.
- sotojuan 10y agoAside from the concurrent testing, Babel with async functions built-ins is our second biggest "bullet point", so even if you were right it's too late. AVA is opinionated and I think the benefits (from what people have told us) gained from using the latest syntax with no Babel config are worth the Babel bottleneck—which isn't that bad.