Thanks a lot Frank,
now I see it all quite clearly.
I always thought that the two following conjectures were true:
conjecture 1 - any given message output by any PD object can always be reproduced by writing it down literally in a message box
conjecture 2 - a PD message is simply a human-readable string that you can always "see" by for example [print]ing it, or prepending a "set" and viewing it in a message box, and two messages that "appear" identical are identical.
Now I see both conjectures are wrong (kinda disappointed since I loved them) but once I assume that, and thank to your explanation, everything is clear and coherent.
A desired message can always be generated using a makefilename or something, and the difference between different cases can be detected - though all this in a less immediate way than I thought.
Now that I think about it, a proper escaping mechanism for writing literals and spelling messages could allow both conjectures to become true without touching the message mechanism: an escape character such as § or whatever may force a number to be interpreted as a numeric symbol (or numeric symbol-selector). For example: [§123( [list 1 3 §123 foo bar( [symbol §123(
Also, the [print] object may print out numeric symbols with the escape character Also, when dynamically setting (or updating) the content of a message box, the escape character may show up.
Wouldn't it be desirable? What would the drawbacks be?
Thanks again m.
-- Email.it, the professional e-mail, gratis per te: http://www.email.it/f
Sponsor: Dvd Verbatim 16x da 0, 32 - Masterizzatore Pioneer112d 29,90 - Cdr Memorex da 0, 16 - Stampa Foto a 0,06 con 25 foto gratis. Solo su atomicshop.it Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=6576&d=31-5
Hallo, Matteo Sisti Sette hat gesagt: // Matteo Sisti Sette wrote:
I always thought that the two following conjectures were true:
conjecture 1 - any given message output by any PD object can always be reproduced by writing it down literally in a message box
Pd's patch format doesn't know about numeric symbols: Every number written in any object or message of a patch is just that: a number.
conjecture 2 - a PD message is simply a human-readable string that you can always "see" by for example [print]ing it, or prepending a "set" and viewing it in a message box, and two messages that "appear" identical are identical.
Yes, this conjecture fails for some kinds of Pd messages. One is the symbol-float: it's not possible to "see" the difference to a float-float. Also pointers, which are in Pd for ages (since 1996 or so), are non-printable in full: You can print their data, but not the pointer itself. Even if two pointers share the same data, they don't need to be the same pointers.
Now I see both conjectures are wrong (kinda disappointed since I loved them) but once I assume that, and thank to your explanation, everything is clear and coherent.
A desired message can always be generated using a makefilename or something, and the difference between different cases can be detected - though all this in a less immediate way than I thought.
Acutally except for numeric symbols and for the "whitespace symbols" [keyname] sometime generates one doesn't meet "strange symbols" a lot in real life, so it's not a real issue in practice.
Frank Barknecht _ ______footils.org_ __goto10.org__
Frank Barknecht wrote:
Hallo, Matteo Sisti Sette hat gesagt: // Matteo Sisti Sette wrote:
conjecture 2 - a PD message is simply a human-readable string that you can always "see" by for example [print]ing it, or prepending a "set" and viewing it in a message box, and two messages that "appear" identical are identical.
Yes, this conjecture fails for some kinds of Pd messages. One is the symbol-float: it's not possible to "see" the difference to a float-float. Also pointers, which are in Pd for ages (since 1996 or so), are non-printable in full: You can print their data, but not the pointer itself. Even if two pointers share the same data, they don't need to be the same pointers.
Another case where this fails is numbers with over 6 digits, although this is more down to Pd not showing the extra digits (including when saving them):
http://lists.puredata.info/pipermail/pd-list/2006-09/042419.html
Claude Heiland-Allen wrote:
Another case where this fails is numbers with over 6 digits, although this is more down to Pd not showing the extra digits (including when saving them):
It comes down to pd making a float out of every number it runs into, which limits the precision of the representation. I wonder if a version of pd where all the floats were replaced by doubles would fly? Martin