On Wed, May 28, 2008 at 3:50 PM, Taral <[EMAIL PROTECTED]> wrote: > Can someone explain why this thing is so huge? (From HashedRepo.lhs) > > lift2Sealed :: (FORALL(y z) q C(y z) -> p C(x y) -> r C(x z)) > -> IO (Sealed (p C(x))) -> (FORALL(b) IO (Sealed > (q C(b)))) -> IO (Sealed (r C(x))) > lift2Sealed f iox ioy = do Sealed x <- unseal seal `fmap` > unsafeInterleaveIO iox > Sealed y <- unseal seal `fmap` > unsafeInterleaveIO ioy > return $ seal $ f y x > > It looks to me like it's identical to: > > lift2Sealed f iox ioy = do Sealed x <- iox > Sealed y <- ioy > return $ seal $ f y x
They are only identical up to strictness, and there they differ. Jason
_______________________________________________ darcs-users mailing list [email protected] http://lists.osuosl.org/mailman/listinfo/darcs-users
