Executive Summary
- Incremental is a library for incremental computations, offering a new approach to reactive programming.
- The library is part of a larger trend in JavaScript UI frameworks, with similarities to signals and observables.
- Incremental computing has applications beyond UI frameworks, including build systems and general computing.
The Buzz Score
The Internet’s Verdict: 70% Hyped, 30% Skeptical
Forum Discussion
Developers are discussing the potential of incremental computing, with some drawing comparisons to existing technologies like signals and observables.
This style of reactive programming is quite popular in JavaScript UI frameworks these days under the moniker “signals”, with a proposal for standardization here: https://github.com/tc39/proposal-signals#-javascript-signals-standard-proposal
Others are exploring alternative approaches, such as using Int32Array arenas to allocate nodes and link them together with linked lists.
There are a few different algorithms for how to propagate changes and evaluate the DAG, I believe SolidJS2 uses a height-based algorithm similar to Incremental.
Technical Details
Incremental computing involves automatically tracking dependencies and updating computations in response to changes.
This approach can be seen as a build system with automatically tracked dependencies, similar to systems like tup.
Conclusion
Incremental computing is an exciting development in the world of reactive programming, with potential applications in UI frameworks, build systems, and beyond.
Focus Keyword: Incremental Computing