
27 Aug
2008
27 Aug
'08
9:23 p.m.
Hello Jonathan, Thursday, August 28, 2008, 1:11:35 AM, you wrote:
IORefs got their names because they are implemented in IO monad :)
But why are they implemented in the IO monad?
because they need its features. but i/o may be implemented w/o IORefs. so sequence was: searching for a was to make i/o in Haskell (you can read about this in "History of Haskell"), finding monads as general approach to implement side-effects, naming one of monads used to interact with external world as IO, adding "variables" support to list of operations of this monad -- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com