我和Sean关于我在做什么进行了讨论
我在一个let绑定中这样处理过,其中s3-path->file-size! 是一个网络调用
```
(let [s3-size (w/lookup-or-miss cache file-path (constantly (s3-path->file-size! file-path))]
;; 做一些事情
)
```
所以我最终意识到我会从缓存中获取file-path的值,但是由于constantly,我会无意识地强制评估s3-path->file-size!
.
明白这一点是我对评估工作原理的误解。但我想这可能是一个将来也可能有人遇到的错误。