Hi,
In the attached patch, I try to dynamically create an object (in the example an [s]) by sending a message to the canvas, and I want this object to have a creation argument $1-foo1 or $1-foo2, etc... That is, the creation argument of the object must contain a "$1" that must not be evaluated when creating the object, plus some fixed part and a number that must be evaluated when creating the object. Then I create at the same time a second object that has a creation argument that is just a clean $1 (not evaluated at creation time).
Look at the attached patch and click on the [3( message box.
Can anyone tell why the object on the left is created with creation argument $1-foo3 rather than $1-foo3, while the object on the right is created with creation argument $1 (not $1)?
Shouldn't the two behave the same way? (in my opinion like the one on the right)
If I then save the patch and look at it as a text file, I see that the object on the left is saved as \$1-foo3 with four slashes!!!
If I then open the patch I saved, it looks fine ([s $1-foo3] with no slash) and if I re-save it the 3 extra slashes are eliminated.
I have often come across similar situations in which either the dollar argument is evaluated or too many slashes are added, but you can't obtain an unevaluated dollar argument with no slashes (i.e. internally only one slash).
If this is by design, I really don't understand it.