[PD] difference send and using msg with ";"

Mathieu Bouchard matju at artengine.ca
Fri Aug 17 22:57:53 CEST 2007


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


More information about the Pd-list mailing list