I've not been following the Global variables debate too closely, it seeming
to have something of a religious wars flavour, but I noticed that an
example being proposed was how to achieve a "one shot" execution. Here's
something I did when working on modifications to the HaXML parser:
[[
-- Memoization of withSocketsDo to prevent multiple calls.
-- (cf. http://tangentsoft.net/wskfaq/articles/lame-list.html)
socketsInitialized :: Bool
socketsInitialized = unsafePerformIO ( withSocketsDo ( return True ) )
]]
Does it work as I think it does? ARe there any problems I'm overlooking?
#g
------------
Graham Klyne
For email:
http://www.ninebynine.org/#Contact
_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe