Hi,

the following example causes ghc to loop (or run rather long):

--- snip ---

data U = MkU (U -> Bool)
     
russel :: U -> Bool
russel u@(MkU p) = not $ p u

x :: Bool
x = russel (MkU russel)

--- snip ---

I think, a compiler should always terminate, shouldn't it!?

Compilation succeeds for "russel $ MkU russel" instead of "russel (MkU
russel)".
(Surely, x is bottom and therefore the example is senseless)

Regards Christian
_______________________________________________
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to