3 ms·
These are very well-behaved instances of caching. They are so well-behaved that they can be fully described with a little bit of analysis. Once I/O is involved
by samus 4y ago
These are very well-behaved instances of caching. They are so well-behaved that they can be fully described with a little bit of analysis. Once I/O is involved or the load isn't well-known beforehand, it becomes much more difficult. Lazy I/O in Haskell is a very divisive topic for a reason.
- hinkley 4y agoThose aren't caching. They're dynamic programming. There's a profound difference and it's about scope and reachability. Edit: and about who's driving.
- wahern 4y agoMemoization is caching and a form of dynamic programming; thus caching is sometimes an important tool in dynamic programming. But the fact that caching can be useful, even essential if your scenario demands such a clear-cut space-time tradeoff as in memoization, seems beside your point.