Nothing here yet.
Nothing here yet.
No blogs yet.
For me, probably class private syntax. Any time I have to write a library I want to keep the implementation details hidden, and manually using WeakMaps isn't very ergonomic. Even in Babel's own codebase, it gets very unclear what is and is not supposed to be a publicly-accessible property.
A couple of Babel's contributors are able to work on Babel part-time at their day job, which helps keep things moving. Otherwise our team is primarily volunteers. Babel currently accepts donations on https://opencollective.com/babel , but there's an open question around how best to reinvest those donations into Babel's community to keep things going.
There are a few primary factors that come to mind: Proposals that are not syntax-related are usually left up to core-js to polyfill, and some new features just can't be polyfilled We're a volunteer team, so someone needs to come forward with the interest to implement a given proposal, and ideally keep it updated. Some stage 0 proposals are expected to iterate quickly, which it less likely that someone will want to maintain it.
I think it is mostly a question of which parts of compilation you want to learn. Babel is a pipeline for source-to-source code transformation, which means it is suited well for cases like compilation of ES* features. Most low-level compiler toolchains are going to do a lot more than that because they are converting from source code into a lower-level representation, whether that's LLVM's IR or bytecode or assembly. For a small overview of Babel you might consider looking at https://github.com/thejameskyle/the-super-tiny-compiler
In Babel 7.x we're adding support for a .babelrc.js file, so you can potentially programmatically build up the config you'd like based on environmental variables, to try to address cases like this more easily. Feel free to join our Slack if you want to chat more.