syntax productions "=" vs "::="
When we use BNF, we sometimes use "=" and sometimes "::=". We should use one of these.
(Also much of our BNF is written as if it were to be processed by a very limited parser generator, avoiding "( )*" and "( )?" constructs for example. It would be nice to see if these productions could be made more readable while we're at it.)
This is likely to be textually invasive so ought to be coordinated with other spec work.