On 9/22/07, Thomas Dalton thomas.dalton@gmail.com wrote:
There's no problem with '=', at least not a new one. If you want to give a template a parameter containing an = sign, you have to give the param a name (or number) - exactly the same applies here.
No, because template parameters are in a different namespace from page names. We (hopefully) ban '=' in template parameters already. We don't additionally need to ban it in page names, since '|' is already banned in page names. Likewise there's no need to ban '=' in page names for this syntax if we ban '::' in page names. You're right that either way it's not the '=' that matters, it's the thing that separates the page name from the parameters, in this case '::'.
The problem with page names including :: is much more serious issue. You can't introduce a new special character without having some way to escape it.
In practice, we tend to not bother with escaping, and just ban the special character outright instead. That's moderately acceptable for small numbers of characters, but we should reuse those banned characters as much as possible for new syntactic constructs, if we really need to make new ones.