What I wanted Babel to be: A thread
-
-
This was only supposed to be the beginning of my vision though. I released Babel 6 live on stage at "EmberCamp London 2015", where in the closing slides, I spoke of my excitement for new tools to be built on top of Babel, including a linter, autoformatter, minifier and more.pic.twitter.com/g182MLst0s
Show this thread -
After Babel 6, I eventually left the project due to mental health reasons and never really got involved again. Since then I've been experimenting with a lot of these ideas and have arrived at some conclusions.
Show this thread -
The idea of these tools being built on top of Babel isn't very sound. An ad-hoc collection of tools is a fragile ecosystem. Atomic releases of all the tools to support new syntax, behaviour, configuration, and more is extremely difficult.
Show this thread -
Today's JavaScript programs uses several different parsers spread across the engines the code is executing in, all the way to the linters, compilers, bundlers and more that are a part of the development process.
Show this thread -
Consolidation of parsers isn't very interesting though. Sure we can all share the same AST, and syntax support, but that doesn't give us any new capabilities. What I'm excited about are things like:
Show this thread -
- a testing framework that uses the same bundler for your test files as the one in production - a linter built on top of compiler so you can do complex AST autofixes - a single config file - a bundler that understands how dependencies are used, and optimizes your bundle
Show this thread -
- a minifier that does constant folding and inlining - a compiler transforms that don't rely on order - a compiler that uses an immutable AST to perform transforms, with accurate scope tracking - a linter that gives me suggestions on how to fix my code - ...
Show this thread -
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
he/him 