[PD] [select 12 12] triggers only one bang

Peter P. peterparker at fastmail.com
Thu Jan 17 22:04:38 CET 2019


* Claude Heiland-Allen <claude at mathr.co.uk> [2019-01-17 18:28]:
> Hi Peter,
> 
> On 17/01/2019 17:04, Peter P. wrote:
> > Hi,
> > 
> > this is not terribly important, but it seems that
> > 	[select 12 12]
> > triggers only its leftmost outlet when it receives a 12 at its inlet. Is
> > this intentional?
> Changing this behaviour in the C is not totally trivial, as you would need
> to keep track of matches, to not send to the last "reject" outlet at the
> end.  As it is now, it just "return"s after sending to a matching outlet.
> 
> https://github.com/pure-data/pure-data/blob/7c27aa0ad505bb4802eee3fc40886836c814353f/src/x_connective.c#L398
> 
> I suggest
> 
>  |
> [t a a]
>  |   |
>  |  [select 12 12]
>  |              |
> [t a a]         rejected
>  |   |
>  |  [select 12]
>  |   |
>  |   12 b
>  |
> [select 12]
>  |
> 12 a
> 
> assuming your 12 is just a placeholder for your real problem (maybe $arg
> stuff?)
Thanks Claude,
I am not really facing a problem here, but some learners of Pd stumbled
across this and wondered why the second outlet doesn't bang. 
I assumed there was a "return after first match" in the source code and
it is good to hear that it is non-trivial to changet it. 
I feel this behavior doesn't even qualify to be mentioned in the help
patch. So thanks to your kind reply it will now be documented in the
mailing list archive at least!

cheers, P





More information about the Pd-list mailing list