Skip to content

Eta-expansion of a left-section

If I say

x = seq (True `undefined`) ()

what should I get when evaluating x?

According to my understanding of the Haskell Report, I should get (). And according to my understanding of GHC's source code (in GHC.Tc.Gen.Expr), I should get (). But I get an exception.

Why?

NB: -XPostfixOperators is off. If it were on, the exception would be expected.

Spun off from https://github.com/ghc-proposals/ghc-proposals/pull/275#issuecomment-624282022

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information