[PD] here I go again..dynamic abstractions

Phil Stone pkstone at ucdavis.edu
Tue Feb 10 16:30:00 CET 2009

Frank Barknecht wrote:
> I see a third option: $0 is not only different from the $-variables in
> message boxes, but it's also different from the $-variables used as
> object arguments.[1] So another way out would be to replace only "$0"
> with something like "#0".

Yes.   This, at least, would end the irrelevant "dollar sign variables 
in message boxes are different than abstraction initializers" argument 
every time someone asks why $0 can't be used in a message box.  :-)  
Also, it would be much less confusing in general, because $0 never means 
the same thing as $1...$n, inside *or* outside of message boxes.

>  Of course beginners then still would like to
> use #0 in a message box.

I'm not a beginner (though far from an expert), and I still want to use 
the unique identifier in message boxes.  What, exactly, is wrong with 
that use case?  Frank, I think you make quite a bit of use of $0 in 
messages in [memento], for example.  If it's wrong, why does the idiom;

[f $0]-[message $1(

get suggested as a solution so often?  In my opinion, that's just a 
kludge, avoiding the original problem.

Looking back on the thread, I see this from Iohannes:
> $-args in message-boxes are a way to modify messages.
> since messages don't have a patch-context, neither have (their  
> patchable instances) message-boxes.

But the message-boxes *do* have a patch context; they live in an 
abstraction that has a unique identifier, which is sometimes useful to 
blend into a message.

I'm sorry for being stubborn about this, but I still don't see Georg's 
basic question answered, just a lot of dancing around it.  :-)


More information about the Pd-list mailing list