On Thu, 21 Nov 2019 at 15:32, Peter J. Holzer <hjp-pgsql@hjp.at> wrote:
> On 2019-11-21 09:43:26 +0000, Geoff Winkless wrote:
> > It wasn't meant to be insulting, I meant "esoteric" in the strict
> > sense: that you need to have specific knowledge to parse them.
>
> I didn't understand it as insulting (why would I?),
I've absolutely no idea, but I couldn't imagine why on Earth you would
apparently take such exception to it otherwise. Maybe writing
sarcastic bombast in response to something that hasn't annoyed you is
just your thing. Oh well, you do you.
> but don't think this
> convention is "requiring ... knowledge that is restricted to a small
> group" (Merriam-Webster).
That's entirely the case here. I'd say the number of people able to
understand something like BNF is vanishingly small in terms of the
7bn(?) world-population.
> This specific convention for conveying grammar
> rules is in my experience by far the most common (before BNF and
> diagrams). Anybody who has read any documentation about any formal
> language (e.g., a programming language, a query language, a markup or
> configuration language) has very likely encountered it before.
OK, but parentheses not being part of the rules, ie that they should
be read literally, is something that is knowledge specific to
postgresql, because "this specific convention" you blithely reference
is only a convention, and there are several instances where
programmers have their own version of this convention where
parentheses are part of the grammar, not the syntax.
> > My point was that modifying the rules (by making certain things bold
> > or italic) wouldn't really solve the problem - if you don't know what
> > the rules are, you're unlikely to be any better off if someone adds to
> > them.
>
> people are very
> likely to understand that
> <i>[</i> <b>( VERBOSE )</b> <i>]</i>
> means that "( VERBOSE )" must be typed as is, but is optional. Even if
> they can't tell you the rules
Depending on the font, I'm not at all confident that I could tell the
difference between <b><i>( VERBOSE )</i></b> and (<b><i> VERBOSE
</i></b>) unless they're actually next to each other.
Geoff