bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Document %define lr.type and lr.default_rules.


From: Joel E. Denny
Subject: Re: [PATCH] Document %define lr.type and lr.default_rules.
Date: Mon, 14 Dec 2009 16:19:17 -0500 (EST)
User-agent: Alpine 1.00 (DEB 882 2007-12-20)

On Wed, 6 May 2009, Joel E. Denny wrote:

> On Wed, 6 May 2009, Akim Demaille wrote:
> 
> > > Generate a deterministic LR or GLR parser employing LALR(1),
> > > IELR(1), or canonical LR(1) parser tables.
> 
> > > What do you think?
> > 
> > I regret that we don't explicit the "generalized" word, but I see your point
> > too. Yet I would say that if the reader is not expected to understand
> > "generalized", he will probably not understand "canonical" either.
> 
> I'm not sure about that.  It is not clear to me that a "generalized 
> parser" or even a "generalized shift/reduce parser" necessarily employs 
> the GLR algorithm.  For example, backtracking is another way to generalize 
> LR.  However, the meaning of "canonical" from English (the sense of 
> "classic" or "standard") alone seems sufficient to convey the meaning of 
> "canonical" in "canonical LR".
> 
> > We may also escape the LR repetition with "generate a deterministic or
> > generalized shift/reduce parser employing LALR(1), IELR(1) or LR(1) parser
> > tables".
> 
> Googling/grepping for "GLR" or "canonical LR" would not return a hit for 
> this sentence.  That loss bothers me more than repetition of "LR".  What 
> about the following?
> 
> "Generate a GLR (generalized LR) or deterministic shift/reduce parser 
> employing LALR(1), IELR(1) or canonical LR(1) parser tables."

It's been a long time coming, but I've finally done something about this.

I think this keeps the most important keywords while remaining fairly 
readable:

  Generate a deterministic LR or generalized LR (GLR) parser employing
  LALR(1), IELR(1), or canonical LR(1) parser tables.

I pushed the following to branch-2.5 and master.  We can always revise 
again later if necessary.

>From 51c7ca01e2c9cfb5c7a274bed0e14899adbd005c Mon Sep 17 00:00:00 2001
From: Joel E. Denny <address@hidden>
Date: Mon, 14 Dec 2009 16:04:00 -0500
Subject: [PATCH] Expand GLR acronym in summary of Bison.

Based on discussion with Akim Demaille starting at
<http://lists.gnu.org/archive/html/bison-patches/2009-04/msg00087.html>.
* doc/bison.texinfo (Introduction): Here.
* src/getargs.c (usage): Here.
---
 ChangeLog         |    8 ++++++++
 doc/bison.texinfo |    7 ++++---
 src/getargs.c     |    4 ++--
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 03660cf..de7790c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-12-14  Joel E. Denny  <address@hidden>
+
+       Expand GLR acronym in summary of Bison.
+       Based on discussion with Akim Demaille starting at
+       <http://lists.gnu.org/archive/html/bison-patches/2009-04/msg00087.html>.
+       * doc/bison.texinfo (Introduction): Here.
+       * src/getargs.c (usage): Here.
+
 2009-10-03  Alex Rozenman  <address@hidden>
 
        Document named references.
diff --git a/doc/bison.texinfo b/doc/bison.texinfo
index b0f391b..1906cd9 100644
--- a/doc/bison.texinfo
+++ b/doc/bison.texinfo
@@ -352,9 +352,10 @@ Copying This Manual
 @cindex introduction
 
 @dfn{Bison} is a general-purpose parser generator that converts an
-annotated context-free grammar into a deterministic or @acronym{GLR}
-parser employing @acronym{LALR}(1), @acronym{IELR}(1), or canonical
address@hidden(1) parser tables.
+annotated context-free grammar into a deterministic @acronym{LR} or
+generalized @acronym{LR} (@acronym{GLR}) parser employing
address@hidden(1), @acronym{IELR}(1), or canonical @acronym{LR}(1)
+parser tables.
 Once you are proficient with Bison, you can use it to develop a wide
 range of language parsers, from those used in simple desk calculators to
 complex programming languages.
diff --git a/src/getargs.c b/src/getargs.c
index 4231cfc..8f7e668 100644
--- a/src/getargs.c
+++ b/src/getargs.c
@@ -257,8 +257,8 @@ usage (int status)
 
       printf (_("Usage: %s [OPTION]... FILE\n"), program_name);
       fputs (_("\
-Generate a deterministic or GLR parser employing LALR(1), IELR(1), or\n\
-canonical LR(1) parser tables.\n\
+Generate a deterministic LR or generalized LR (GLR) parser employing\n\
+LALR(1), IELR(1), or canonical LR(1) parser tables.\n\
 \n\
 "), stdout);
 
-- 
1.5.4.3





reply via email to

[Prev in Thread] Current Thread [Next in Thread]