我最近读了一些关于函数式语言的书。经历了 10 多年的 OO 开发,我发现很难理解究竟如何将纯函数式方法(即使用相同参数调用的相同方法做同样的事情)指向一个问题,通常(在 OO 程序中)我需要缓存数据。
我们是否只是承认程序中可能需要一个不可变的参与者(即缓存)。我刚刚在 infoq 上观看了 Joe Armstrong 的演讲,他在这方面似乎很教条!
我们是否承认查找数据可能很昂贵(因为我们永远无法缓存它)?如果是这样,我们如何控制,例如,某些共享资源(例如数据库)的负载
有没有一些我还不知道的魔法仙尘,解决了整个问题,然后泡了一杯好茶。
当然,谷歌搜索“Erlang Cache”似乎返回了相当多的结果......