| This suggests a natural implementation (and specification) for pseq, | | pseq :: a -> b -> b | pseq x y = x `seq` lazy y | | where lazy :: a -> a is a compiler provided function equivalent to 'id' | except that it is considered lazy in its argument by the strictness | analyzer.
Exactly so! Here is the definition of `pseq` in GHC.Conc: Conc.lhs:368:pseq :: a -> b -> b Conc.lhs:369:pseq x y = x `seq` lazy y And 'lazy' is documented in the user manual: http://www.haskell.org/ghc/docs/latest/html/libraries/ghc-prim/GHC-Prim.html#v%3Alazy Simon
_______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime