Hacker News new | ask | show | jobs
by dsagal 1437 days ago
That's what I wonder about too. I imagine that a slow calculation would be fine if done once when the data is first loaded into the system. Once the results are in memory, any new data should only affect smallish subsets of cells.

This is the approach our product Grist (https://www.getgrist.com) takes for its calculation engine.

Keeping track of dependencies slows it down for the initial load, but beyond that, it only needs to calculate what's needed, so most updates are fast. Even though the engine literally evaluates user-defined Python code for every cell.