Why does the select object output "symbol bang" when it receives a bang, but any other input (that doesn't match an argument) seems to pass through the right outlet unchanged?
I commonly need to intercept a specific message and handle it, otherwise pass the input along unchanged. Because of "symbol bang" I have gotten in the habit of using route instead of select. In my experience, this behavior just gets in the way of what I am trying to do, but I figure there must be a reason for it?
The only info I could find on it was this old post:
which seems to have been addressed by documenting the behavior in the reference manual, but the reason for the behavior is not explained. There must be some interesting trivia about Max's type system and how select is implemented - I'm all ears :)
And I thought perhaps this behavior could be used to distinguish between a true bang and a symbol bang, but that doesn't seem to be the case. I've included a patch I was using to investigate this behavior. I also tried using the printit external but it didn't shed any light on this situation.