[PD] Nestable Dictionaries in Pd

João Pais jmmmpais at gmail.com
Wed Sep 8 10:30:42 CEST 2021


can you post an example of a parsed content?


Thanks all for the pointers. Now it is on mer to check the other tutorials
> and find a way around. Our object does parse json in and out to file and
> std if needs be, the only idea here is a batch interface with Pd so users
> can input and retrieve en masse to our dataset world (with mlp and umap and
> other fun ML goodies - all working so soon on a repo near you if I can
> crack that last interface problem :)
>
> > On 8 Sep 2021, at 08:26, João Pais <jmmmpais at gmail.com> wrote:
> >
> > is jmmmp/cellblock a model of what you could use? but adapted to lists
> and maybe not so complex?
> >
> > I tried opening your first example in [text]. As I thought, the issue is
> that commas are already reserved in pd for line changes. The output is this
> (I added a line number at the start of each line) when using carriage
> returns:
> >
> > print:  0 {
> > print:  1 "cols" : 3
> > print: 2
> > print:  3 "data" : {
> > print:  4 "entry-0" : [ -0.06755
> > print:  5 0.44185
> > print:  6 -0.33835 ]
> > print: 7
> > print:  8 "entry-1" : [ -0.12305
> > print:  9 -0.24085
> > print:  10 0.31295 ]
> > print: 11
> > print:  12 "entry-2" : [ -0.0595
> > print:  13 -0.2881
> > print:  14 0.0597 ]
> > print:  15 }
> > print: 16
> > print:  17 }
> > print: 18
> >
> > Or this without them:
> >
> > print:  0 { "cols" : 3
> > print:  1 "data" : { "entry-0" : [ -0.06755
> > print:  2 0.44185
> > print:  3 -0.33835 ]
> > print:  4 "entry-1" : [ -0.12305
> > print:  5 -0.24085
> > print:  6 0.31295 ]
> > print:  7 "entry-2" : [ -0.0595
> > print:  8 -0.2881
> > print:  9 0.0597 ] } }
> > print: 10
> >
> > which makes it a bit hard to read json files without some hacking, as
> all those commas create a new line. Unless there is another method, is it
> better to code your own json interpreter?
> >
> > One advantage of [text] is that it can be used to declare data
> structures directly - examples might be in my tutorial, I'm not sure
> anymore how far I got with it.
> >
> > Files are attached.
> >
> > Joao
> >
> >> Thanks for the quick reply!
> >>
> >> 2 use-cases.
> >>
> >> 1- we can generate or retrieve a dataset's content to use natively in
> the creative coding environment (Max Pd Sc) so that it integrates in other
> workflows of data mangling and drawing. We already have in our dataset
> object file support and single point entry and query but this allow batch
> dump and load. The structure is:
> >>
> >> {
> >>      "cols" : 3,
> >>      "data" :        {
> >>              "entry-0" : [ -0.06755, 0.44185, -0.33835 ],
> >>              "entry-1" : [ -0.12305, -0.24085, 0.31295 ],
> >>              "entry-2" : [ -0.0595, -0.2881, 0.0597 ]
> >>      }
> >>
> >> }
> >>
> >>
> >> 2- we can retrieve or set the state of a complex objects. Our object
> will spit out its internal status ( for instance, a neural net) and we can
> use the values of its parameters, like below. More interestingly, we can
> also query its structure and use that information too.
> >>
> >> {
> >>      "layers" : [            {
> >>                      "activation" : 3,
> >>                      "biases" : [ -3.076234734727154, 0.772760846709679
> ],
> >>                      "cols" : 2,
> >>                      "rows" : 1,
> >>                      "weights" : [ [ 6.015551733036155,
> -1.826803841455323 ] ]
> >>              }
> >> ,            {
> >>                      "activation" : 3,
> >>                      "biases" : [ -0.490600074475542 ],
> >>                      "cols" : 1,
> >>                      "rows" : 2,
> >>                      "weights" : [ [ -3.115116035462417 ], [
> -3.969281643687132 ] ]
> >>              }
> >> ]
> >> }
> >>
> >> The key-value nesting is quite powerful for this type of open
> structure...
> >>
> >>> On 7 Sep 2021, at 15:51, Christof Ressi <info at christofressi.com>
> wrote:
> >>>
> >>> Can you give an example of how the data is structured?
> >>>
> >>> In which ways are users supposed to interact with the data?
> >>>
> >>> Christof
> >>>
> >>> On 07.09.2021 16:37, Pierre Alexandre Tremblay wrote:
> >>>> Dear all
> >>>>
> >>>> I am trying to find the most Pd-vanilla-way to interface with our
> Dataset object in the FluCoMa project. In Max and SuperCollider we use
> Dictionaries, which are nestable and queryable in powerful programmatic
> ways, working essentially like interfaces to JSON-like data structures.
> >>>>
> >>>> I’ve looked at [struct] but the [set] object does not allow to do
> symbols and (list of) floats, and [appends] seem to have the same
> limitations. In all cases, I’m not certain it is the best approach in any
> cases to create such a list in Pd...
> >>>>
> >>>> I wonder how people do it and if I am missing an obvious workflow,
> especially with nested structures.
> >>>>
> >>>> Any pointer (pun intended) welcome
> >>>>
> >>>> p
> >
> > <json-test.pd><test.json>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20210908/e9128f95/attachment.htm>


More information about the Pd-list mailing list