[comp.compilers] Full LL

reidmp@maine.maine.edu (Reid M. Pinchback) (03/14/91)

In "Crafting a Compiler" (Fischer & LeBlanc), the pros and cons
of a strong LL(1) versus a full LL(1) parser are discussed.  The
text implies that the example code in the book is for a strong LL(1)
parser.  It doesn't clearly mention how the actual construction of
the parser differs for the two cases.

Here is the question:  How does *construction* of a full LL(1) parser
differ from construction of a strong LL(1) parser?  How could you tell
the difference when looking at sample code?

Thanx in advance
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

vsnyder@jato.jpl.nasa.gov (Van Snyder) (03/15/91)

In article <REIDMP.910313132041@maine.maine.EDU> reidmp@maine.maine.edu (Reid M. Pinchback) writes:
>In "Crafting a Compiler" (Fischer & LeBlanc), the pros and cons
>of a strong LL(1) versus a full LL(1) parser are discussed.  The
>text implies that the example code in the book is for a strong LL(1)
>parser.  It doesn't clearly mention how the actual construction of
>the parser differs for the two cases.

I thought for k=1, LL(k) and Strong LL(k) were the same?  I don't have
Fischer & LeBlanc at hand (It's at home)  (BTW, it's my favorite text to
teach from).  On page 156 of Waite and Goos, we have Theorem 7.3: "Every
LL(1) grammar is a strong LL(1) grammar," preceeded by a simple proof that
follows immediately from Theorem 7.2: blah blah blah.

-- 
vsnyder@jato.Jpl.Nasa.Gov
ames!elroy!jato!vsnyder
vsnyder@jato.uucp
[Aho et al. don't talk about strong LL(1).  What is it? -John]
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.

REIDMP.BITNET@gatech.edu (Reid M. Pinchback) (03/16/91)

According to Fischer and LeBlanc, the language described by
strong LL(1) and full LL(1) is the same, but the actual parsers
themselves differ.  One direct email reply stated that the difference
had to do with strong LL(1) being used in cases where you had
controlled ambiguity.
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.