deeqSeq proposal
Jan-Willem Maessen
jmaessen at alum.mit.edu
Wed Apr 12 09:21:10 EDT 2006
On Apr 11, 2006, at 5:37 PM, Lennart Augustsson wrote:
> Yes, I realize than dynamic idempotence is not the same as
> cycle detection. I still worry. :)
>
> I think expectance is in the eye of the beholder. The reason
> that (the pure subset of) pH was a proper implementation of
> Haskell was because we were not over-specifying the semantics
> originally. I would hate to do that now.
Though, to be fair, an awful lot of Prelude code didn't work in pH
unless it was re-written to vary slightly from the specification. So
the assumption of laziness was more deeply embedded than the spec was
willing to acknowledge.
-Jan-Willem Maessen
>
> -- Lennart
>
> Simon Peyton-Jones wrote:
>> | Well, my worry was partly about the suggested version of deepSeq
>> that
>> | would not diverge on circular structures (since circular structures
>> | are just one way to implement "infinite" data structures).
>> Dynamic idempotence is not the same as detecting circular structures.
>> Deepseqing a circular structure should definitely diverge, as it
>> would
>> as if it was infinite. Idempotence changes the operational
>> behaviour,
>> but not the denotational behaviour. So that part of the worry is ok.
>> But since the dynamic-idempotence operational behaviour is (as I
>> understand the proposal) the whole point, it's true that the
>> implementation would be constrained. In the same kind of way that we
>> expect call-by-need rather than call-by-name. S
>
> _______________________________________________
> Haskell-prime mailing list
> Haskell-prime at haskell.org
> http://haskell.org/mailman/listinfo/haskell-prime
More information about the Haskell-prime
mailing list