[PD] '$0' in messages again, another proposal? (Was: Pd 0.52 test 2 is out)
Christof Ressi
info at christofressi.com
Thu Dec 2 17:21:44 CET 2021
Hi Ico,
I already made my own PR a few years ago:
https://github.com/pure-data/pure-data/pull/347
> Another consideration is that there is a bit of a CPU overhead in
> dynamically allowing $0 to be expanded.
AFAICT, my implementation actually *saves* a little bit of CPU because I
cache the $0 value once in the message box constructor and then pass it
explicitly to the new binbuf_doeval() function.
the current message box implementation calls binbuf_eval() which would
query the $0 every single time (and we don't even use it :-)
Christof
On 02.12.2021 17:10, Ico Bukvic wrote:
> If you would like to test if $0 works inside messages as originally
> suggested by Alexandre, you can try pd-l2ork. This is what it has been
> using for quite some time now, although the use cases of $0 inside a
> message remain relatively sparse. Another consideration is that there
> is a bit of a CPU overhead in dynamically allowing $0 to be expanded.
>
> Best,
>
> Ico
> --
> Ivica Ico Bukvic, D.M.A.
> Director, Creativity + Innovation
> Director, Human-Centered Design iPhD
> Institute for Creativity, Arts, and Technology
> Virginia Tech
> Creative Technologies in Music
> School of Performing Arts – 0141
> Blacksburg, VA 24061
> (540) 231-6139
> ico at vt.edu
>
> ci.icat.vt.edu <http://ci.icat.vt.edu>
> l2ork.icat.vt.edu <http://l2ork.icat.vt.edu>
> ico.bukvic.net <http://ico.bukvic.net>
>
>
> On Thu, Dec 2, 2021 at 8:34 AM Christof Ressi <info at christofressi.com>
> wrote:
>
> I think you're extrapolating from your particular use case.
>
> I would say most people use $0 for private variables/resources. In
> this case the very point is that those are not accessible from
> outside. If I do want to make things accessible from the outside,
> I wouldn't use $0 in the first place...
>
> On 02.12.2021 14:25, Antoine Rousseau wrote:
>>
>> Without the "$$" syntax, I wouldn't see the problem...
>>
>>
>> encouraging the use of $0 in messages, without allowing to easily
>> substitute with [another way to identify the abstraction] $1?..
>>
>>
>>
>> Le jeu. 2 déc. 2021 à 13:18, Christof Ressi
>> <info at christofressi.com> a écrit :
>>
>>> So I think it's better to keep the $0/$n symmetry.
>>>
>>> I think having a "message" object is a better idea [than
>>> $$'s one]
>>>
>>>
>>> What I like with the $$ idea, is that it would provide a
>>> simple way to merge creation arguments with variable
>>> arguments, i.e compose a message with both the abstraction
>>> arguments and the incoming message elements.
>>
>> I have to say I quite like the "$$" idea as well, assuming
>> that we can take the risk of breaking a few patches (if any).
>>
>> I don't think it's a good idea to add a new object just for
>> this functionality. For me this would create unnecessary
>> complexity (you have to learn yet another object).
>>
>>> I'm not sure either. To me, both $0 and $1 etc. can be used
>>> to identify an instance of an abstraction.
>>> IMO $0 is the quick way, but has the limitation to make it
>>> (nearly) impossible to access members from the outside.
>>> That's why it often happened to me to rename an instance
>>> [myAbs] to e.g [myAbs myabs1], then to replace $0 in [myAbs]
>>> with $1, so I can easily access [myAbs]'s members from the
>>> parent - from anywhere in fact (Actually, nowadays I tend to
>>> use as few $0 as possible).
>>> If we could use $0 in messages, then the last operation
>>> would be more complicated (cause you couldn't simply
>>> substitute $0 with e.g $1).
>>
>> I agree that if we get the "$$" syntax, then it makes more
>> sense to use "$$0" for the $0 argument! Without the "$$"
>> syntax, I wouldn't see the problem...
>>
>> One downside of using "$$0" is that it wouldn't be compatible
>> with Pd-L2Ork / PurrData.If they have already diverged
>> significantly, we probably don't have to care, but otherwise...
>>
>> _______________________________________________
>> Pd-list at lists.iem.at mailing list
>> UNSUBSCRIBE and account-management ->
>> https://lists.puredata.info/listinfo/pd-list
>>
> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20211202/a33937a2/attachment-0001.htm>
More information about the Pd-list
mailing list