5 ms·
I don't understand the algorithm. How can you cache any particular area, wouldn't other areas potentially affect it?
by bioweek 17y ago
I don't understand the algorithm. How can you cache any particular area, wouldn't other areas potentially affect it?
- gjm11 17y agoThe function whose values get cached maps a square region at time n to a smaller (concentric) square region at time n+k, for some choice of k. The bits that might be affected by stuff outside the square aren't returned.
- jacquesm 17y agoLife patterns are changed at most at 'the speed of light' because the influence of a cell only reaches only to the next cell. What amazes me most about this is the enormous speed increase over other implementations, which usually center around nifty bit packing routines. Algorithms that give you billions of times speedup over others are a rare find, the 'fresh approach' paid off in a big way here. It's also interesting that he uses functional programming techniques to achieve this, even if initially it seems like you're actually losing performance.