Re: SUMMARY: BNF definition (EBNF acceptance)

adrian@platon.cs.rhbnc.ac.uk (A Johnstone)
Sun, 22 May 1994 14:49:17 GMT

          From comp.compilers

Related articles
SUMMARY: BNF definition rdwi@se.bel.alcatel.be (Ronny De Winter) (1994-05-18)
Re: SUMMARY: BNF definition (EBNF acceptance) nathan@stc.com (Nathan K. Inada) (1994-05-18)
Re: SUMMARY: BNF definition (EBNF acceptance) parrt@s1.arc.umn.edu (Terence Parr) (1994-05-20)
Re: SUMMARY: BNF definition (EBNF acceptance) adrian@platon.cs.rhbnc.ac.uk (1994-05-22)
Re: SUMMARY: BNF definition (EBNF acceptance) max@Kolmogorov.gac.edu (1994-05-23)
| List of all articles for this month |

Newsgroups: comp.compilers
From: adrian@platon.cs.rhbnc.ac.uk (A Johnstone)
Keywords: parse
Organization: Univ. of London, Royal Holloway College.
References: 94-05-067 94-05-080
Date: Sun, 22 May 1994 14:49:17 GMT

Terence Parr (parrt@s1.arc.umn.edu) wrote:
: EBNF is great if you generate recursive-descent parsers, but wouldn't
: affect conventional LL or LALR automaton-based parsers because they simply
: convert EBNF to BNF and do the usual FSM boogie. Russell Quong, Hank
: Dietz (both at Purdue) and I once considered how you could build an
: LR-based FSM that took advantage of EBNF constructs, but didn't end up
: anywhere with it.


My parser generator (RDP) uses EBNF specifically so as to generate more
efficient recursive descent parsers. It can make a big difference for
list-style constructs (such as C parameters and declarations), and I even
went to the trouble of defining a new EBNF construct which is shorthand
for A {t A} where A is a production and t is a terminal. RDP is available
via anonymous ftp - mail me for details.


Adrian Johnstone, CS Department, Royal Holloway, University of London
adrian@dcs.rhbnc.ac.uk
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.