On Fri, 17 Aug 2007, Matteo Sisti Sette wrote:
$0 is inconsistent with $1, $2 etc strictly speaking, but you may think of $0 as of an "implicit creation argument". The name $0 has the same scope of the names $1,$2,
yes.
Making $0 mean in a message the same it means in an object box, would make it *a lot* more inconsistent with $1,$2 in messages than $0 is with $1,$2 in object boxes.
scope-wise, yes. I once recommended that the selector of a message be interpreted as $0 in a messagebox, because this has the same scope as the message arguments, even though when following this logic it means that objectboxes' $0 ought to be the name of the class the abstraction was created as (before any path lookups and following symlinks, but after any $-substitutions in that name).
$1,$2... in messages are evaluated at the time the message box receives its input and generates its output; they are arguments of the message it receives. The "natural" object-counterpart of $0 would be a number that is unique to that particular message event (not message box) or message tree, though that would be of little or no use..... or wouldn't it?
Right... messages are way too volatile for this to be of any use (beyond statistics about the execution itself, but that's the job of a profiler)
I am personally strongly against implementing $0 in messages meaning the same as $0 outside them. It would introduce further inconsistence. If there actually is some inconsistence now, it is not a good reason imho to deliberately introduce more inconsistence.
I don't know... when you have a messagebox, the $ arguments are processed in the context of the incoming message but the message has a default receiver that is the messresponder (a hidden object that relays to the outlet of the messagebox). In an objectbox, the $ arguments are processed in the context of the enclosing patch and the default receiver is the objectmaker (an object whose methods are the constructors of all possible object classes). I can't find an analogy like "W is to X what Y is to Z" about it. Is this inconsistence or not? Is it just the way things have to be like?
If there is no sensible use of $0 in messageboxes, then is it less inconsistent to reuse $0 for something else, than if it were an actual contradiction? Aren't those two different levels of inconsistency? Does this distinction matter?
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada