
On Tue, 19 Dec 2006 21:34:06 +0100, you wrote:
Lazy semantics -> equational reasoning ? I thought that : lack of mutable state -> equational reasoning. For instance, I think to data flow variable in Oz (whcih I really don't know much / never used) : if a (Oz managed) thread attemps to read the value of an unbound (data flow) variable, it waits until another thread binds it. But the equational reasoning (referential transparency) remains (and the evaluation is eager by default).
How about this: Lazy semantics encourages one to write code in a way that eases equational reasoning? The classic example of this is a problem that has a finite solution, but whose solution is most clearly expressed in terms of operations on infinite structures. Steve Schafer Fenestra Technologies Corp. http://www.fenestra.com/