[Haskell] strictness of putChar: report incomplete?

Wolfgang Jeltsch wolfgang at jeltsch.net
Wed Oct 5 11:33:53 EDT 2005


Am Mittwoch, 5. Oktober 2005 16:22 schrieb Simon Marlow:
> [...]

> Also, GHC's optimiser currently treats (_|_ :: IO a) and (do _|_; return
> ()) as interchangeable, which is naughty, and people have occasionally
> noticed, but the benefits can sometimes be huge.  It is this distinction
> that makes it hard to optimise IO code in a Haskell compiler, though.

I think, seq should be a method of a type class.  Then we could forbid 
applying seq to a function, we could forbid applying seq to an IO expression 
and we could forbid applying seq to expressions of any type with hidden 
implementation for which we don't want to provide bottom tests.

> Cheers,
> 	Simon

Best wishes,
Wolfgang


More information about the Haskell mailing list