2009/4/10 Stefan Monnier <[email protected]>: >>>>> IO a ~ World -> (a, World) >>>> I still don't understand this; we are passing a World and getting a >>>> World back, >>> We are? Why do you think that? >> Because that's what (World -> (a,World)) means, last I checked. > > No: Hasekll functions are partial, which means that "a -> b" means > "takes an object of type `a' and if it terminates, it returns an object > of type `b'". Note the "if it terminates". > > Since neither loop nor loop' terminate, their return type is > actually meaningless. >
Why? They both return _|_, which is a quite legal value of that type. > > Stefan > > _______________________________________________ > Haskell-Cafe mailing list > [email protected] > http://www.haskell.org/mailman/listinfo/haskell-cafe > -- Eugene Kirpichov Web IR developer, market.yandex.ru _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
