- 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. Lukas -- Lukas Renggli www.lukas-renggli.ch