You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wanted to create an umbrella task for when we start working on compiler level optimizations. We've had a tag open for a while but these are fairly primitive optimizations. We want to be able to go further.
I don't think we'll start this project immediately but soon after the Fiber stuff is in place.
Compiler Infra
Base-line cross-module full JavaScript AOT compiler.
Compiler infra structure that fits well into existing tooling at FB, Webpack, Rollup based ecosysem etc. Support parallelism and incremental builds.
Solve things like what the npm ecosystem should do. Compile before publishing or after? Probably after.
Optimizations
Enable multiple levels of host instances / DOM elements to be managed by a single Fiber. I think this is probably a key requirement for many optimizations. I'm not sure if that Fiber's children will have a single placement point (the parent that they get inserted into) or if it could have multiple insertion points. If it manually does the insertion of its children, then the later would work.
Optimizing pure host/DOM elements ("string" components). Can be reasoned about at the core compiler level.
Inlining pure functional components so that now the result can be reasoned about as a flat component.
Basic constant folding for static configuration.
Optimizing across component boundaries without inlining.
Optimizing stateful functional components.
Runtime Optimizations
Dead-code elimination of library code that isn't needed by a particular application. Such as certain events, controlled components or complex attributes.
Stretch Goals
Computing delta updates after code changes and lets Service Workers update based on that.
More to come...
The text was updated successfully, but these errors were encountered:
Spinoff from reactjs/react-future#50
I wanted to create an umbrella task for when we start working on compiler level optimizations. We've had a tag open for a while but these are fairly primitive optimizations. We want to be able to go further.
I don't think we'll start this project immediately but soon after the Fiber stuff is in place.
Compiler Infra
Optimizations
Runtime Optimizations
Stretch Goals
More to come...
The text was updated successfully, but these errors were encountered: