Andy Gill wrote:
I'd like to see a way of enforcing return strictness, that is where you
have confidence that what a function is returning is fully evaluated.

Imagine a function hstrict;

     hstrict :: a -> a

Is this like deepseq, that strictly evaluates internal structure using seq?

With hstrict you can write functions in the style.

fun f a b c = hstrict $ ....
  where
    ...
    ...

But surely fun can return the unevaluated thunk (hstrict x)? Since hstrict has not yet been called, it can't do its strictifying magic, whatever that is.

--
Ashley Yakeley

_______________________________________________
Haskell-prime mailing list
[email protected]
http://haskell.org/mailman/listinfo/haskell-prime

Reply via email to