For a single pair of left single quotes, ?name is clear:
Any valid Maple name formed without using left single quotes is precisely the same as the name formed by surrounding the name with left single quotes.
So this is fine:
`x`;
x
But what about multiple left single quotes? This help page also states:
A name may also be formed by enclosing any sequence of characters in a pair of left single quotes
Any sequence of characters includes a sequence of left single quotes, but another story of parsers occurs.
1D input:
``x``;
Error, missing operator or `;`
```x```;
`x`
````x````;
Error, missing operator or `;`
`````x`````;
``x``
Not clear which is the issue here (something about the empty name?).
2D standard input:
``x``;
``^2*x
```x```;
``^2*x
````x````;
``^4*x
`````x`````;
``^4*x
Nice effect (when typeset). A product is implied and the empty name commutes with 'x'. And yet...
2D clasic input:
``x``;
Unable to convert "``x``;" to an expression
```x```;
`\`x\``
Comments
I think this is as expected
It's just the usual issue - in 1D input they need escaping for the obvious reason of ambiguity:
`\`x\``;
really does produce `x` as a name.
In 2_D input I have no idea what's going on and don't much care - I can't see any use for 2D input myself.
Toby
2D standard
[Yep, I am a full 3 weeks behind reading Primes, and I am unlikely to catch-up today, just wandering around on a couple of interesting posts]
The explanation here is also simple: invisible times. `` is the empty name `x` is the name x; so ```x``` is then taken to be the same as `` `x` `` which is indeed ``^2*x.
Part of the issue is that ` is 1-sided, unlike (), [] and {}, so you cannot easily figure out which ` belongs with which other `. Uniformly choosing the closest-one, while otherwise respecting the language grammar, produces the effects you report here. There is no clear-cut way of doing this, so this becomes part of the "grammar design".