[PD] Understanding Selectors, Atoms, Lists ...

Frank Barknecht fbar at footils.org
Wed Apr 19 19:35:09 CEST 2006


Hallo,
Mathieu Bouchard hat gesagt: // Mathieu Bouchard wrote:

> On Wed, 19 Apr 2006, Sciss wrote:
> 
> > pack accepts a "metasymbol" as first inlet (so i *can* omit the selector
> > here), but only a "symbol" as second inlet. 

Note that even with that, [pack]'s output will be a proper
list-message, which you can check with: 

  [a( [symbol b( [symbol c(
  |   |           |
  [pack s s s     ]
  |
  [print]

will print "list a b c".

> I believe that this is a serious misfeature of Pd: interpreting a lone
> selector as a symbol introduces exceptions because some selectors already
> mean something else. "set" isn't like "symbol set", "bang" isn't like
> "symbol bang", "symbol" isn't like "symbol symbol", "float" isn't like
> "symbol float" (and then some more, depending on which object you send
> to). Also, if lone selector messages weren't accepted as if they were
> symbol messages, there would be less confusion between those two things.

Yes, I agree, lets file a bug report against [pack] ... oh, but what about
backwards compatibility. :(

I guess, the misleading behaviour comes from the fact, that the first
inlet often is an "anything" inlet, which accepts anything:
meta-messages, symbols, floats, lists, that sometimes are distributed
over other inlets etc. 

I'd say, that one should take great care not to rely lone selectors,
being converted to symbols because often they aren't, for example not
with the Ctrl-4 symbol-atom.

[list] in pd-0.39 works great for adding proper selectors, btw.
because by design it adds a list-selector and the message will be
auto-converted by Pd to a proper symbol-message later, if the incoming
message just contained one non-float element.

Ciao
-- 
 Frank Barknecht                 _ ______footils.org_ __goto10.org__




More information about the Pd-list mailing list