My top 3 related annoyances (in pd-0.41-4 on Linux).
Jonathan Wilkes wrote:
The current help patch for [list] family objects doesn't mention what kind of messages [list] outputs.
I remember reading somewhere (maybe on puredata.info) that for messages consisting of two or more atoms/elements, [list] will output a list, and for empty lists and 1-element messages [list] will output a bang or float/symbol messages, respectively.
I think the conversion is done at inlets of co-operating objects, rather than outlets. Probably the conversion work is duplicated if you fan-out, possibly also the source code to do the conversion is duplicated too (but I haven't investigated).
But as far as I can tell, [list] doesn't do any conversion at its outlet-- everything it outputs will have the selector "list", and it's up to other objects like [route] to do any conversion they deem necessary.
For example, take the bug with sigbinops:
[put anything you want in this message box( | [list] |
[+~ ]
error: inlet: expected 'signal' but got 'list'
So I'm guessing that [list append/prepend/split] always output messages with the "list" selector. This would seem consistent with the behavior at the inlets.
Do I have this right?
Thanks, Jonathan
#N canvas 0 0 450 300 10; #X obj 55 170 *~; #X obj 70 141 route 1; #X msg 70 112 1 2; #X msg 161 108 1; #X obj 161 140 list trim; #X obj 146 169 *~; #X msg 252 110 list 1; #X obj 252 139 route list; #X obj 309 166 print; #X text 50 51 pd-0.41-4 on Linux has 3 annoyances (or more..); #X connect 1 0 0 1; #X connect 2 0 1 0; #X connect 3 0 4 0; #X connect 4 0 5 1; #X connect 6 0 7 0; #X connect 7 1 8 0;