|
|
|
|
|
by j_m_b
4007 days ago
|
|
Thanks for the response. Just trying to expand my brain here =), so I have a followup question. I always thought of memoization as storing the parameters to, and result of, a function call in a memotable. Doing some quick research, I came across this definition of memoization from NIST that sounds more general "Save (memoize) a computed answer for possible later reuse, rather than recomputing the answer." What I understand from what you said is that when a request is processed, it produces a map that is passed around for the duration of the request. Something like: Request -> (some processes) -> memoized map -> Policy Filters How is the memoized map reused? |
|
The "automatic" bit is that we insert the code that consults the map so the programmer doesn't have to write it. The map itself is already invisible, because it's inside the monad. So the overall effect is a form of automatic memoization.