the way I see it is that send and receive are just ways of cross connecting signals/variables across your patch or abstraction without having to connect them up with 'messy' patch cords or inlets and outlets. you can have as many send and receive objects as you want if they are non-signal type. if they are signal type, then think about it: if you have two [send~ sig1] objects with two different signals connected to each inlet, then what will the [receive~ sig1] object see? so you can only have one signal-type [send~] object with any one name.
however, throw and catch work a bit differently. here, you CAN have two [throw~] objects with the same name, and the associated [catch~] object SUMS up the two different 'thrown' signals.
locality is defined by giving the send, receive, throw, catch objects different names. the $0 symbols you see are a way of restricting the locality: if you have mutliple copies of an abstraction with sends and receives and you don't want them interacting, you put $0 at the beginning of the name so they won't interact and become local to their respective abstractions. PD replaces (even though you don't see it) each with a specific name to each abstraction.
$1 and $2 etc are used to manually change the names via creation arguments, so $1 corresponds to the first creation argument of the patch. if I got anything wrong, please let me know....!
matt
-=-=-=-=-=-=-=-=-=-=-=-=- http://www.loopit.org/ -=-=-=-=-=-=-=-=-=-=-=-=- ----- Original Message ----- From: "Atte André Jensen" atte@ballbreaker.dk To: "pd mailing list" pd-list@iem.at Sent: Wednesday, August 20, 2003 1:58 PM Subject: [PD] throw/catch vs send/recieve
Hi
I'm a bit confused about *exactly the diference is between throw/catch and send/recieve. Also what is the meaning of the $0-something I se somewhere in the examples (my guess is locally send/recieve, but nor sure)?
-- peace, love & harmony Atte
PD-list mailing list PD-list@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-list