3 ms·
You're right, and thank you for bringing async up. And thankyou for bringing up constraint propagation. One of my ideas is the definition of formulas that act
by samsquire 4y ago
You're right, and thank you for bringing async up.
And thankyou for bringing up constraint propagation.
One of my ideas is the definition of formulas that act as materialized views over other materialised views. So we can layer materialized views over other materialized views and then work out a derived formula that is potentially nearer to what we want and potentially summarise the formula without needing to calculate the underlying views, we can compute the formula directly.
Is this differential dataflow?
I think it's an application of algebra and JIT compilers could do it to expressions if we fed symbolic expressions of programming languages into sympy or machine algebra.
In react, react does diffing between virtual DOM nodes to see if there are changed. There is also dirty region checking in old games and damage regions. These problems are mathematically defined.
Here's my writings on the idea
https://github.com/samsquire/ideas4#31-algebraic-materialised-view-edits-and-whole-program-optimisation https://github.com/samsquire/ideas4#31-algebraic-materialise...
- csdvrx 4y ago> I think it's an application of algebra and JIT compilers could do it to expressions if we fed symbolic expressions of programming languages into sympy or machine algebra Yes and the constraints could be the used to reduce the computational costs, giving higher performance and lower latency. A while back, a good friend (we even shared HN accounts for a while lol) pointed me to pipelinedb: a PostgreSQL timeseries plugin for continuously updating """materialized views""" I use a lot of quotes around, because it wasn't either like a regular view (computed when you query it, which introduces latency) or a materialized view (frozen, needs to be refreshed, same problem) but more like the NO_HZ tickless kernel: the update of the calculations was caused by the introduction of new data, not the passage of time (which would be wasteful) The general approach makes a lot of sense to me, and I see how it could be used for more generic problems.