[PD] static array/text
Ingo Stock
mail at ingostock.de
Mon May 7 21:00:32 CEST 2018
Here is a method where the arrays are defined within the abstractions,
but every abstraction is just using the one defined in the first
abstraction.
I am not sure why there is an error when you open the abstraction file
on its own, as $1 should resolve to zero, but other than that the method
should work fine.
best, ingo
On 05/07/2018 08:22 PM, Liam Goodacre wrote:
> I didnt know you could have two [array define] with the same name
> without printing "warning: /arrayname/: multiply defined", and this
> feels like a bug to me, because what's the use case here? I treid
> using [array set] and it only did set one of the arrays... (the
> first one)
>
>
> The use is to warn you against using multiple [array define]'s of the
> same name! That's a dangerous thing to do, since you're never going to
> know which array is being used (unless you happen to remember which one
> you created first).
>
> There are two possibilities: either you want each instance of the array
> to be unique. In that case, use $0. Or, you want only one array. In that
> case, put it outside the abstraction.
>
> well, by using [array set] it gives you the "warning: /arrayname/:
> multiply defined", so there you go... I say this is not "value"
> behaviour, as you still only have one defined array to access
>
>
> PD is complaining that you have multiple [array define]'s, not multiple
> [array set]'s. You can have as many [array set]'s of the same name as
> you want.
>
> However, you're right that it seems to take an [array set] to trigger
> this warning message, which is a bit confusing.
>
> ------------------------------------------------------------------------
> *From:* Alexandre Torres Porres <porres at gmail.com>
> *Sent:* 07 May 2018 19:11
> *To:* Liam Goodacre
> *Cc:* Pd-list
> *Subject:* Re: [PD] static array/text
>
> I didnt know you could have two [array define] with the same name
> without printing "warning: /arrayname/: multiply defined", and this
> feels like a bug to me, because what's the use case here? I treid using
> [array set] and it only did set one of the arrays... (the first one)
>
> 2018-05-07 13:41 GMT-03:00 Liam Goodacre <liamg_uw at hotmail.com
> <mailto:liamg_uw at hotmail.com>>:
>
> Seems like the "value behaviour" is something that could be
> implemented in [array define] with a new flag, right?
>
>
> Correct me if I'm wrong, but the [array] objects already have
> [value] like behavior, in that you can have multiple objects
> referencing the same array. The difference is that with [value], the
> reference is implicit while with [array] it is explicit (ie. [array
> define]).
>
> The only thing a flag could do would be to tell [array define] to
> accept the first instance of a particular argument and reject the
> rest. But this would lead to a lot of confusion since you could have
> lots of empty [array define]'s scattered around the place.
>
> The best solution is surely to put the array in a parent patch of
> the abstraction. If you don't mind putting it there yourself, you
> can do as Ingo suggested. If you want it to happen automatically,
> then there are neat dynamic patching solutions available.
>
> ------------------------------------------------------------------------
> *From:* Pd-list <pd-list-bounces at lists.iem.at
> <mailto:pd-list-bounces at lists.iem.at>> on behalf of Alexandre Torres
> Porres <porres at gmail.com <mailto:porres at gmail.com>>
> *Sent:* 07 May 2018 15:46
> *To:* Pd-list
> *Subject:* Re: [PD] static array/text
>
> Seems like the "value behaviour" is something that could be
> implemented in [array define] with a new flag, right?
>
> 2018-05-07 10:19 GMT-03:00 Antoine Rousseau <antoine at metalu.net
> <mailto:antoine at metalu.net>>:
>
> In moonlib you can find [sarray] and [slist], which implement
> the [value] behaviour (i.e multiple declarations of a shared
> data) for array and list of symbols.
> They are also dynamically re-assignable.
>
>
> Antoine Rousseau
> http://www.metalu.net
> <http://metalu.net> __ http://www.metaluachahuter.com/
> <http://www.metaluachahuter.com/compagnies/al1-ant1/>
>
>
> 2018-05-07 13:47 GMT+02:00 Ingo Stock <mail at ingostock.de
> <mailto:mail at ingostock.de>>:
>
> Maybe you can just put the text/array object into the main
> file, like in
> the attached demo?
>
> best, ingo
>
>
> On 05/07/2018 12:02 AM, Dan Wilcox wrote:
> > Is there one way to define a "static" table or text data that can be
> > shared among abstractions? I have a few abstractions which use lookup
> > tables and I realize now that they are basically creating a copy with
> > each instance when they could really share the same data directly. I
> > suppose this would be somewhat related to [value].
> >
> > --------
> > Dan Wilcox
> > @danomatika <http://twitter.com/danomatika>
> > danomatika.com <http://danomatika.com> <http://danomatika.com>
> > robotcowboy.com <http://robotcowboy.com>
> <http://robotcowboy.com>
> >
> >
> >
> >
> >
> > _______________________________________________
> > Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing
> list
> > UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
> <https://lists.puredata.info/listinfo/pd-list>
> >
>
> _______________________________________________
> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
> <https://lists.puredata.info/listinfo/pd-list>
>
>
>
> _______________________________________________
> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
> <https://lists.puredata.info/listinfo/pd-list>
>
>
>
> _______________________________________________
> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
> UNSUBSCRIBE and account-management ->
> https://lists.puredata.info/listinfo/pd-list
> <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 --------------
A non-text attachment was scrubbed...
Name: demo2.zip
Type: application/zip
Size: 537 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20180507/eb06bbc7/attachment.zip>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20180507/eb06bbc7/attachment.sig>
More information about the Pd-list
mailing list