[PD-dev] First attempt at "list" object uploaded
Hans-Christoph Steiner
hans at eds.org
Thu Jul 28 02:54:20 CEST 2005
On Jul 27, 2005, at 1:30 PM, Miller Puckette wrote:
> On Wed, Jul 27, 2005 at 08:52:10AM -0400, B. Bogart wrote:
>> Hey all,
>>
>> I've been barely able to keep up with this thread. Lots of ideas and
>> changes. Here I agree with everything that HC has to say.
>>
>> I'm also a bit confused (anoyed) about the whole list vs nonlist
>> things
>> just for the reasons HC mentions. Miller, you said it is probably
>> "better" to use lists rather than lists that do not start with "list"
>> as
>> the first element, non-lists. Why is this?? I think a list should be:
>>
>> * interpreted in many cases as a non-list. (ie creating OSC names for
>> example, [list send /hello/blah value] automatically gets rid of the
>> "list" part because it knows what to do about it.
>>
>> * be able to contain a mix of symbols and float atoms
>>
>> * there be only be one "list-like" thing, I don't know what this would
>> make a non-list into... an undefined list? One would not need a
>> non-list if the first point above was true and the "list" part not
>> considered part of the list. (NOT the first element, but something
>> invisible that you never need to see, like "float [float]" where I
>> have never had the need to worry about it but the damn list selector
>> comes up all the time. :(
>>
>> Thats all for me.
>>
> Well, there's an attempt to straighten this out in a subpatch of the
> "list"
> help window...
Ok, I just did a quick survey of Max/MSP's behavior. Max handles the
[route one] example properly (both output from the left outlet):
[one 2 three(
| [list one 2 three(
|/
[route one]
Max does [route list] badly, Pd outputs on the correct outlets (but it
seems a little odd to me that [route list] would not output a list on
its left outlet):
[1 two 3]
| [list 1 two three(
| /[one 2 three(
| //[list one 2 three(
|///
[route list]
(which outlet)
Max Pd
-----------------------------------------
1 two 3 left left
list 1 two 3 left left
one 2 three right right
list one 2 three right left
And lastly, [print]. Max is more consistent, but it would be nice to
see the selectors when they exist:
[1 two 3]
| [list 1 two three(
| /[one 2 three(
| //[list one 2 three(
|///
[print]
Max Pd
-----------------------------------------
1 two 3 1 two 3 1 two 3
list 1 two 3 1 two 3 1 two 3
one 2 three one 2 three one 2 three
list one 2 three one 2 three list one 2 three
This investigation lead me to another odd behavior: [route symbol]
outputs a symbol on its left outlet, while [route list] outputs a
non-list. While it is definitely useful to have an object with can
strip off the "list" selector, I don't think it should be called [route
list]. [route list] should output a list for every list it receives on
its inlet.
I added an example of this to my collection:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: list_catalog.pd
Type: application/octet-stream
Size: 3797 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20050727/7803d31f/attachment.obj>
-------------- next part --------------
.hc
________________________________________________________________________
____
?El pueblo unido jam?s ser? vencido!
More information about the Pd-dev
mailing list