Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: Laccio Framework >> PD PureData inspiration

From: jasonic:nomadics at: 22-Aug-2007 22:56

Alessandro Manotti wrote:
> Hello Jason, > > I not yet red your links (I will do as soon as possible !). > If I understood what you say (I'm sorry, I'm Italian, and sometimes english > language could be not so clear for me!) you think I could implement > something to let the components communicate one with each other in a easy > way? >
Yes.. 1) I believe PD PureData offers a superb interface metaphor/paradigm for your components and for Rebol3. 2) PD has an open source API. That means *someones* [not me alas] could write a Rebol interface to PD. Then all sorts of cool modeling could happen very quickly, including hopefully engaging a larger very creative community of programmer-musicians-experimental innovators. One could also join the rebol parts via PD to lots of others... yay! Ruby Python and other languages have been used to write PD patches. In general this is because people want to do something in PD and use the language they know and love. However, it can also work the other way around -- I'd call it "host system and interface symbiosis" ... The Wiki for PD API is http://www.puredata.org/docs/developer/PdAPI and one example using that, which I just found googling is http://www.le-son666.com/software/pdj/ PDJ enables you to write java code to interact with pure-data objects. another ... mxdublin a Java/Python framework that can be used to sequence generic events within pure-data or max. http://le-son666.com/software/mxdublin/ uses Jython = Python implementation written in Java << ouch wow cool 3) The design philosophy is very familiar--- PD REBOL Laccio fertile ground I think. 4) I also imagine/hope that a PD-inspired interface could be written in 100% rebol -- actually R3 [rebol3] probably best. That would mean a light, fast, 100% rebol graphic interactive user interface toolkit could support inter-component inter-system communications and instrument building. beautifully so :-) -- many advantages including opening access to non-rebol programmers USE of such tools. 5) You might find this is perfect -- or too much, but inspiring none the less I hope. 6) A delightful design feature of PD is that PD files ["patches" they are called] are just simple TEXT files - interpreted by the PD environment as dynamic interface. You have to install and play with it to understand what I am talking about really. It's a rich universe and thriving community. But here's an example from the interactive user Manual when you install the software. 'patch' = a file called 04.messages.pd If you open that in PD it looks like this screen shot [but it works] If you open in a text editor it look just like this: #N canvas 0 0 595 446 12; #X floatatom 225 110 0 0 0 0 - - -; #X floatatom 184 109 0 0 0 0 - - -; #X msg 184 56 5 6; #X floatatom 132 108 0 0 0 0 - - -; #X floatatom 64 105 0 0 0 0 - - -; #X text 30 21 Most Pd messages are just numbers or short lists of numbers: ; #X msg 64 55 5; #X obj 64 80 + 9; #X obj 132 83 +; #X obj 184 84 unpack; #X msg 288 55 5; #X obj 288 107 print; #X obj 288 81 pack 34 78; #X msg 132 55 5 6; #X floatatom 195 328 0 0 0 0 - - -; #X obj 195 303 +; #X msg 195 254 1.2 3.4; #X msg 205 277 5 6; #X text 36 206 Unlike Max \, in Pd all numbers are floating point. Numbers whose values happen to be integers are displayed without decimal points.; #X text 31 363 For more on messages \, get help on any message box by right-clicking.; #X text 329 409 updated for Pd release 0.33; #X text 34 149 If you send a list to an object with more than one inlet \, the items in the list are spread out over the inlets \, as seen in the 5+6 example above.; #X connect 2 0 9 0; #X connect 6 0 7 0; #X connect 7 0 4 0; #X connect 8 0 3 0; #X connect 9 0 1 0; #X connect 9 1 0 0; #X connect 10 0 12 0; #X connect 12 0 11 0; #X connect 13 0 8 0; #X connect 15 0 14 0; #X connect 16 0 15 0; #X connect 17 0 15 0; hope this makes sense regards Jason