2018-04-02 16:02 GMT-03:00 Miller Puckette msp@ucsd.edu:
Well, I've been trying to stay out of this, but here's a thing... someone could implement a "msg" object that you could invoke like [msg 1 $0 3] to get a message with a 'true' $0 built into it. This would also work for $1, etc, so would be much smarter than changing the message box semantics.
But then the question is, how would you allow message-box-style $ substitutions? OK, we can do this:
[msg $1 #1]
which would be the exact reverse of Max's #1 convention - #1 could be the message-box $1.
I've shrunk from actually doing this, not just because it makes my teeth hurt, but also because... shouldn't this be expanded into a full-on scripting language? And what then would be its relationship with the expr family? It quickly got too deep for me to figure out what would be a good, canonical solution.
Well... if the idea was to expand Pd's message syntax, why not add #0, #1, etc... as a way to expand creation arguments in messages? It wouldn't be in reverse to Max (if that's any positive)... sure, there are backwards compatibility concerns, but it feels it was a good thing to have.
But yeah, since IOhannes' "no" and me accepting the fact the current behaviour remains so as the result of a conscious decision, I've started working on an external, and much inspired by max's message box. But not being a max user, I did know about "#1" there.
Anyway, by getting my hands dirty on it, I realized how "$1" would naturally expand to arguments, and hardly would expand to message's input (maybe possible with some ninja tricks, but maybe not even possible). Then I thought both ways could useful in a message, so it became this deal not only about "$0" anymore... and also the fact that, Ideally, there would be two different prefixes for message expansion and creation argument expansion.
So I was looking for a syntax to refer to message inputs as well. By considering the [expr] way of doing such a thing (with "$f#" and stuff), I thought a generic "$a#" ("a" for "atom", symbol or float). Though I kinda like the "#1" idea now that you mention it, haha, even though if reversed if compared to max... but yeah, something like "$a1" looks more "PD-ish", right?
In any case, I welcome any kind of feedback!
cheers
cheers Miller
On Mon, Apr 02, 2018 at 08:55:58PM +0200, Roman Haefeli wrote:
yawn.....
On Son, 2018-04-01 at 17:42 -0300, Alexandre Torres Porres wrote:
Hi, currently, if you want to use $0, you need an object cause it becomes "0" when it's inside messages.
Pd-l2ork and Purr Data implemented a way that $0 works in the same way as in objects than in messages, and I think it is a great feature, as many patches can be significantly simplified. I guess most Pd users here know what I'm talking about.
By implementing that, you would once forever prohibit the proper way to expand $0 which is expanding to the selector of the message. That's why I oppose your proposition. (Actually, it doesn't matter whether I'm opposing it or not since I don't contribute any Pd code. But I can at least point to the fallacies.)
I absolutely see the convenience of your proposition, but there would be no good explanation for it. Consider it a bad coincidence that both kinds of variables use a dollar prefix, there is nothing in common between them (expanding to creation arguments versus expanding to atoms of messages). Personally, I would totally find it convenient if Pi was an integer number, it would make so many things so much easier.
Roman
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/
listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/ listinfo/pd-list