<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:12pt"><div id="yiv1299730044"><div><div style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;"><div id="yiv1299730044"><div id="yiv1299730044yui_3_13_0_1_1396547572572_4856"><div id="yiv1299730044yui_3_13_0_1_1396547572572_4855" class="yiv1299730044yui_3_13_0_1_1396547572572_4827" style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;"><div id="yiv1299730044yui_3_13_0_8_1396544225176_13">For example, if you have two help patches open and each has an array inside it named "array1". &nbsp;One of the help patches will work, and the other won't. &nbsp;That's because
 "Put" menu arrays assume you only have one array by that name. &nbsp;Pd will use the first one it finds (probably the first one you create) and the duplicate will be ignored.</div><div id="yiv1299730044yui_3_13_0_8_1396544225176_13"><br></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4828" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">In the case of arrays you'll get a warning, because you're not supposed to use the same name twice. &nbsp;But with the send/receive classes (as well as many
 other objects that use pd_bind) you can have many s/r pairs sharing the same name.<br><br>So suppose you have [s loop] and [r loop] in a subpatch, and [s loop] and [r loop] in an unrelated subpatch.</div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4829" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><br>Are those s/r pairs supposed to communicate with each other?&nbsp; Or...</div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4832" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">Did the author forget he/she already used the name "loop" for the first s/r pair and
 doesn't actually want the other s/r pair to
 communicate with the first?<br></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4833" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><br id="yiv1299730044yui_3_13_0_8_1396544225176_39"></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">If the answer to the second question is yes, then that's an example of a nameclash.&nbsp; Pd doesn't give you a way to tell the difference.&nbsp; Most programming languages have clear and sensible ways to avoid this.&nbsp; There's even a Pd external to do it-- I think it's called
 [sendlocal] and [receivelocal]-- but its
 author erroneously thought that $0 deprecates those objects.</div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0, 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;"><br></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0, 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;">Pd gurus on the list can give you seemingly simple workarounds for these problems with scope and nameclashes, but as you the programmer accumulate them it gets more and more unwieldy. &nbsp;Worse, it makes it difficult to read patches, as you must spend
 time decoding someone else's idiosyncratic use of [makefilename] or whatever they are doing to get Pd to do what is concise, consistent and robust in nearly every other modern programming language.</div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0, 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;"><br></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0, 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;">Finally-- and again-- these problems cannot be improved in Pd without breaking some backwards compatibility.
 &nbsp;Just take the related issue of namespaces with external libraries-- it's hard enough to design and test something robust like Python's namespacing. &nbsp;Now imagine trying to design something like that which is also backwards compatible with the crude namespacing tools that already exist in Pd. &nbsp;It's not possible, and that means as long as people imagine Pd Vanilla as the "core" Pd $0 hackery is the only way to simulate scoping.</div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0, 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;"><br></div><div class="yiv1299730044yui_3_13_0_1_1396547572572_4834 yui_3_13_0_1_1396549510475_4937" id="yiv1299730044yui_3_13_0_8_1396544225176_13" style="color:rgb(0, 0,
 0);font-size:16px;font-family:HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;background-color:transparent;font-style:normal;">-Jonathan</div><div class="yiv1299730044yahoo_quoted" id="yiv1299730044yui_3_13_0_8_1396544225176_15" style="display: block;"> <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;" class="yiv1299730044yui_3_13_0_1_1396544225176_5241 yiv1299730044yui_3_13_0_1_1396547572572_4840">
 <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;" class="yiv1299730044yui_3_13_0_1_1396544225176_5242 yiv1299730044yui_3_13_0_1_1396547572572_4841"> <div dir="ltr"> <font face="Arial" size="2"> On Thursday, April 3, 2014 12:35 PM, Alexandre Torres Porres &lt;porres@gmail.com&gt; wrote:<br> </font> </div>  <div class="yiv1299730044y_msg_container"><div id="yiv1299730044"><div><div dir="ltr"><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5244 yiv1299730044yui_3_13_0_1_1396547572572_4843">&gt; * when you run into nameclashes, you know your project&nbsp;</span><div><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5245 yiv1299730044yui_3_13_0_1_1396547572572_4844">&gt; has outgrown Pd and it's time to choose another
 language</span><br clear="none">
<div><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5246 yiv1299730044yui_3_13_0_1_1396547572572_4845"><br clear="none"></span></div><div><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5247 yiv1299730044yui_3_13_0_1_1396547572572_4846">what's a nameclash? (maybe I haven't&nbsp;</span><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5248 yiv1299730044yui_3_13_0_1_1396547572572_4847">&nbsp;</span><span style="font-family: arial, sans-serif; font-size: 12.727272033691406px;" class="yiv1299730044yui_3_13_0_1_1396544225176_5249 yiv1299730044yui_3_13_0_1_1396547572572_4848">outgrown Pd yet)</span></div>
</div></div><div class="yiv1299730044gmail_extra"><br clear="none"><br clear="none"><div class="yiv1299730044yqt6176885987" id="yiv1299730044yqtfd92046"><div class="yiv1299730044gmail_quote">2014-04-03 13:00 GMT-03:00 Jonathan Wilkes <span dir="ltr">&lt;<a rel="nofollow" shape="rect" href="">jancsika@yahoo.com</a>&gt;</span>:<br clear="none">
<blockquote class="yiv1299730044gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="yiv1299730044">On 04/03/2014 04:00 AM, IOhannes m zmoelnig wrote:<br clear="none">
<blockquote class="yiv1299730044gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
-----BEGIN PGP SIGNED MESSAGE-----<br clear="none">
Hash: SHA256<br clear="none">
<br clear="none">
On 2014-04-03 03:05, Alexandre Torres Porres wrote:<br clear="none">
<br clear="none">
</blockquote>
<br clear="none"></div>
[...]<div class="yiv1299730044"><br clear="none">
<br clear="none">
<blockquote class="yiv1299730044gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br clear="none">
btw: i would probably even recommend to use explicit *connections*<br clear="none">
(rather than send/receive pairs) for anything local. then you never<br clear="none">
have the problem of "[qlist] and locality" - very simple &nbsp;and forces<br clear="none">
you to think about your object interfaces.<br clear="none">
</blockquote>
<br clear="none"></div>
I would also recommend only using global receive-symbols when you have to use them. &nbsp;That way:<br clear="none">
* your patches are more readable<br clear="none">
* no need to feed $0 to message boxes<br clear="none">
* when you run into nameclashes, you know your project has outgrown Pd and it's time to choose another language<span class="yiv1299730044HOEnZb"><font color="#888888"><br clear="none">
<br clear="none">
-Jonathan</font></span><div class="yiv1299730044HOEnZb"><div class="yiv1299730044h5"><br clear="none">
<br clear="none">
<blockquote class="yiv1299730044gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br clear="none">
<br clear="none">
<br clear="none">
fgmasdr<br clear="none">
IOhannes<br clear="none">
-----BEGIN PGP SIGNATURE-----<br clear="none">
Version: GnuPG v1<br clear="none">
Comment: Using GnuPG with Icedove - <a rel="nofollow" shape="rect" href="">http://www.enigmail.net/</a><br clear="none">
<br clear="none">
iQIcBAEBCAAGBQJTPRULAAoJELZQGc<u></u>R/ejb4NioP/0Kyyz4MA+<u></u>Tqq8890uEHGj9Z<br clear="none">
FZHEo5z/idBj7Z+<u></u>WmAHrEipkIW70pnVBB4bVzC8owgV66<u></u>AQZBuEqXMeJcIpu3MXK<br clear="none">
ULvsvxcFcoY9YH7hbJAF+<u></u>mlDFvbh1CXcVbvEChZ8y5rz0XekSMf<u></u>+//qUfJSlKTWX<br clear="none">
GXjJzw8s42yfSpVJYBjEh6fBFzlk2f<u></u>oLRFPFXaR6Cbj+Y7aNEiW//+<u></u>Vim3nOzleT<br clear="none">
6azYe0leLabir72nnWIKGahnT2GXgW<u></u>kgxu6L//<u></u>nTgsBYOa1COUoKOh44wvBbMSoW<br clear="none">
lbLduDY5drxJbyISGoZdsuailriv1x<u></u>MGIkiSwTw4WSwVWBj2kv5MgoHC09ug<u></u>qtLe<br clear="none">
bVHrizcP09+<u></u>VUz20y8IMnXrRRgj8AU8Z+<u></u>9xzZIzf9PV3U15zSlRqwZSFIwMCuhY<u></u>s<br clear="none">
CeRqxtDFVsB/PARQoCys/<u></u>B4QDjAszBPE2VC1xKSelBMjyGbvPyZ<u></u>A7uq/R199zLCy<br clear="none">
WMp0uu0+Q6WKa/zIB+<u></u>sphLlifnXjYYXJaCGZNOzign1EJLOn<u></u>BvOY/4zgE3bHtx9r<br clear="none">
FIlSFSMo6BrYjOEJvh/MxF90TawI/<u></u>aCQ/MbEea0+finxJi2jp2PnMom+<u></u>QbCvjfBa<br clear="none">
zLh8hlNP0tLp21Jo1ydzu0/<u></u>vYb9mEzMQtpEv9lqrde0INcEKL9Tas<u></u>wFGf5TXyM7h<br clear="none">
JeTnSBV0Th0CjQER9Gik<br clear="none">
=oC+u<br clear="none">
-----END PGP SIGNATURE-----<br clear="none">
<br clear="none">
______________________________<u></u>_________________<br clear="none">
<a rel="nofollow" shape="rect" href="">Pd-list@iem.at</a> mailing list<br clear="none">
UNSUBSCRIBE and account-management -&gt; <a rel="nofollow" shape="rect" href="">http://lists.puredata.info/<u></u>listinfo/pd-list</a><br clear="none">
</blockquote>
<br clear="none">
<br clear="none">
______________________________<u></u>_________________<br clear="none">
<a rel="nofollow" shape="rect" href="">Pd-list@iem.at</a> mailing list<br clear="none">
UNSUBSCRIBE and account-management -&gt; <a rel="nofollow" shape="rect" href="">http://lists.puredata.info/<u></u>listinfo/pd-list</a><br clear="none">
</div></div></blockquote></div><br clear="none"></div></div></div></div><br><br></div>  </div> </div>  </div> </div></div></div></div></div></div></div></body></html>