On Wed, 26 May 2010, Lukas Renggli wrote:

- The exact semantics of #and:and:and: is not clear without knowing
how it is implemented.

- There are subtle semantic differences between "a and: [ b ] and: [ c
] and: [ d ]" and "a and: [ b and: [ c and: [ d ] ] ]" if the
conditions have side-effects.

That's not true. Both #and: and #and:and:and: (and friends) are
short-circuit, so they'll cause exactly the same side effects.

I know that and this is *not* what I am talking about. What you point
out is already discussed above, it is absolutely unclear what
#and:and:and: does without looking at the implementation.

The point is that blocks that are lexically nested "a and: [ b and: [
c ] ]" and blocks that are in a lexical sequence "a and: [ b ] and: [
c ]" do not have the same expressive power (temps, state) and do not
necessarily behave the same.

Maybe i'm just narrow-minded, but I can't see the difference except for the scope of temporaries defined inside blocks.


Levente


Lukas

--
Lukas Renggli
www.lukas-renggli.ch

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to