[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
3.3 Grammar Rules Issues
From: |
slipbits |
Subject: |
3.3 Grammar Rules Issues |
Date: |
Sat, 11 Jun 2022 13:38:05 -0700 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 |
You nowhere define the syntax and grammar of Bison in one place. It is
very important that all syntax and grammar rules be defined, and equally
important that definition be aggregated and complete, and put into an
accessible location. The scatter-shot revelation of grammar and syntax
should be avoided.
Additionally, conventional approaches to defining the syntax are nowhere
present. This provides a difficulty for users, who depend on knowing
what is there and how to use it.
We all are critical and non-accepting of comments concerning our 'baby'.
And we get angry. But I present these things as an interested 'editor',
committed to the successful presentation of what is to be considered an
outstanding piece of software. I hold my hat out to you all. Thanks.
Issues:
1. You use ambiguous rules in your grammar. This is not BNF as
developed by Backus (Fortran), Naur (Algol). See for example
"Deterministic Parsing of Ambiguous Grammars" , Aho, Johnson, Ullman
POP '73. You might as well mention that you use Extended BNF (EBNF)
somewhere. Here would be an excellent place, but it should be
mentioned in 1.1 Languages and Context-Free Grammars also.
**
2. You do not include the augmented EBNF syntax and or grammar.
3. Define the metalanguage used to define Bison syntax and grammar.*
*
4. Include the syntax of a valid terminal (%token), non-terminal
(%type, %ntype), and directive.
5. Include where whitespace can be used (blank, tab, etc.) and in what
quantity, e.g., where one b;ank is used, many can be used.
6. Specify the format of line endings (VAX, Unix, DOS/Windows, etc.)
and any limitations
7. Include bison delimiters, for example {line ending, blank, %, :, }
\', \"} , and where is is appropriate to use them.
8. Include the syntax for tags (see 3.6 Named References.
9. Include the syntax for Actions (3.4.6 Actions).
10. Include the syntax for directives, see for example, 3.7.2 Token Kind
Names.
I sincerely hope that you will look at this. If you would like me to
write a document section for your review, please notify me.
art
- 3.3 Grammar Rules Issues,
slipbits <=