Re: Crenshaw's Tutorial

"Alan Fargusson" <>
15 Feb 2000 02:20:16 -0500

          From comp.compilers

Related articles
Crenshaw's Tutorial (Colin Doncaster) (2000-01-19)
Re: Crenshaw's Tutorial (2000-01-21)
Re: Crenshaw's Tutorial (Jack Crenshaw) (2000-02-05)
Re: Crenshaw's Tutorial (Joachim Durchholz) (2000-02-10)
Re: Crenshaw's Tutorial (2000-02-12)
Re: Crenshaw's Tutorial (Alan Fargusson) (2000-02-15)
Re: Crenshaw's Tutorial (Randall Hyde) (2000-02-15)
Re: Crenshaw's Tutorial (Joachim Durchholz) (2000-02-17)
Re: Crenshaw's Tutorial (David Thompson) (2000-02-21)
Re: types, was Crenshaw's Tutorial (Dr A. N. Walker) (2000-02-27)
Re: Crenshaw's Tutorial (2000-03-23)
| List of all articles for this month |

From: "Alan Fargusson" <>
Newsgroups: comp.compilers
Date: 15 Feb 2000 02:20:16 -0500
Organization: Compilers Central
References: 00-01-073 00-02-017 00-02-038 00-02-061
Keywords: syntax

> C, C++, Java, ADA, SQL and Fortran are not LL(1) [Fortran is LL(k)
> with a large k].

I doubt that Fortran is LL(k). I don't think any of these languages
are LR(k).

There is no way to say, for example, that a variable can be declared
once and only once in a LR(k) grammar.

Note that the first C compiler ever was a recursive descent compiler.
This was the one that Ritchie wrote for UNIX on the PDP-11.
[Please, let's not get into hair-splitting arguments about what's the
syntax and what's the semantics. I don't know of any parser that attempts
to enforce redeclaration rules syntactically. FYI, the Ritchie C compiler
was about 2/3 recursive descent. The expression parser was table-driven
operator precedence. -John]

Post a followup to this message

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