That is a pretty good walkthrough of the "harder" parts of functional programming.
Although, I always found it telling that the language designers needed the "do" imperative notation for monadic state computations.
While the benefits of monadic-state are pretty well known at this point, it does seem interesting that for widespread adoption it has to be "wrapped" in an abstraction more familiar to developers.
Although, I always found it telling that the language designers needed the "do" imperative notation for monadic state computations.
While the benefits of monadic-state are pretty well known at this point, it does seem interesting that for widespread adoption it has to be "wrapped" in an abstraction more familiar to developers.