-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
On 2013-10-07 03:13, Ivica Ico Bukvic wrote:
and as such it seems logical that a msg should retain its last known
state,
no. that's totally unrelated to being consistent.
so that when receiving a bang it would output its last stored values.
why? i think the current behaviour is very consistent though probably less convenient than some would like to have it.
...how is [$1] retains value and [msg] doesn't (except it does anything other than $n) consistent?
[$1] does not retain it's value. [$1] gets evaluated at instantation time, and it could evaluate to [print] in one patch and to [netreceive] in another patch. if you have an abstraction "foo" containing [blu $1 $2] and you call it once as [foo 10 20] and once as [foo 3], the latter will not have a [blu 3 20]. [*] the only thing that [$1] retains is, that it will evaluate to the first argument of the patch.
msgboxes (assuming this is what you mean by [msg]) retain their meaning in the same way: [$1( will always evaluate to the first list-element of the incoming message.
As you said, it's consistent in terms of having been Pd's dollarsign behavior "forever". Outside of that specific type of consistency across time--
i.e.,
backwards compatibility-- I see no valid argument that either way is
"more"
consistent. Both approaches are self-consistent. They (presumably) work exactly the same regardless of the context in which they get used in a particular patch.
i cannot recally having said that one of the two approaches is not consistent. i only argued that the current behaviour already is consistent (and thus consistency is a bad reason to change it)
Then, there are those situations where properly formed message is passed through the msg object with no reported errors but is still malformed according to the receiving object below msg. An error is thrown by the receiving object but one has no way of recreating and studying the offending message...
do you have examples for that?
Another thought is that just like [$1] retains last data value during runtime, shouldn't [msg] too? After all [msg] retains the rest of the list inside it not only during runtime but also during save, so why would not it retain its last data during runtime?
see above (and please clarify what the [msg] object is)
fgmasdr IOhannes