I think the name “context wrapper” is meaningful representation. To me, (and i emphasise the to me part) It’s something that wraps on type to add more information to it.
For instance a time type could be wrapped in timezone Monad. To stop time being manipulated without the context (time zone) being corrupt, we use map to only allow specific changes to instance inside the monad.
I think the name “context wrapper” is meaningful representation. To me, (and i emphasise the to me part) It’s something that wraps on type to add more information to it.
For instance a time type could be wrapped in timezone Monad. To stop time being manipulated without the context (time zone) being corrupt, we use map to only allow specific changes to instance inside the monad.
I wrote a little blog post on my interpretation if anyone’s interested: https://blog.philliptaylor.net/?post=monads-for-oo-programmers.md