In trying to understand fixST, I ran into the following which must be a bug.

Version 971118
...
Prelude> :load LazyST
...
LazyST> :type runST (fixST ((\x -> do return 1) :: Int -> ST s Int))
runST (fixST (\x -> do {...})) :: Int
LazyST> runST (fixST ((\x -> do return 1) :: Int -> ST s Int))
()

The type of the expression is Int, but evaluating it yields ().
--
Scott Turner
[EMAIL PROTECTED]       http://www.ma.ultranet.com/~pkturner

Reply via email to