On Wed, 25 Nov 2009, Roman Haefeli wrote:
To me, it is not even clear, when data types are converted, in cases when conversion happens at all. Does it happen at the 'inlet', or the 'outlet'? at both?
It is always at the inlet. You will not figure this out by using [print] or [route], which are both designed to hide the inconsistency under the carpet. They both contain the combination of if-statements required to mask the problem. Basically each of those classes contains a replica of much of pd_defaultlist, only in a way that doesn't look like copy+paste.
[prepend] in Cyclone is different from [list prepend], and that's by design, not a bug (as symbol-selector handling in [route] might be).
We don't know if it is a bug, but it doesn't seem logical in a common sense of the word 'logical'.
«logical» thus means «something that follows from a set of rules (instead of just being a rule of its own)» instead of the other possible definitions of «something that follows the rules instead of not following them» and «something that was found using the rules instead of being found by other means»... (I didn't look at dictionary for this, I thought about what are the uses of the word that I do encounter in practice.)
But because the whole set of rules hasn't been defined or agreed upon, we don't know whether anything is logical or not, because logic always starts from a set of basic rules (which can't be deduced from any other rules... at least not literally).
Actually, we can know, as this is written in Pd's source code (and Dd's source code). It's just that the source has to be read... (well, if someone can find Martin Peach's internals doc, I can't find it atm, so I can't tell whether it documents this or not).
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard, Montréal, Québec. téléphone: +1.514.383.3801