|Production missing on page 9 of Compiler Construction email@example.com (firstname.lastname@example.org) (2007-08-31)|
|Re: Production missing on page 9 of Compiler Construction DrDiettrich1@aol.com (Hans-Peter Diettrich) (2007-09-01)|
|Re: Production missing on page 9 of Compiler Construction email@example.com (Adrian Devries) (2007-09-02)|
|Re: Production missing on page 9 of Compiler Construction firstname.lastname@example.org (2007-09-03)|
|From:||email@example.com (Torben =?iso-8859-1?Q?=C6gidius?= Mogensen)|
|Date:||Mon, 03 Sep 2007 09:09:23 +0200|
|Organization:||Department of Computer Science, University of Copenhagen|
|Keywords:||books, errors, parse, comment|
|Posted-Date:||03 Sep 2007 21:30:24 EDT|
"firstname.lastname@example.org" <email@example.com> writes:
> E = T | A "+" T.
> T = F | T "*" F.
> F = V | "(" E ")".
> V = "a" | "b" | "c" | "d".
> A is being used on the right hand side without it being defined on the
> left hand side first. What am I missing?
> The only thing I can think of is that it is missing a production at
> first, like:
> A = E
Alternatively, you can simply replace the "A" by an "E". It has the
same effect as adding A = E, but it doesn't make the grammar larger.
In all likelyhood, Wirth originally used A for the German/Swiss word
"Ausdruck" (meaning "Expression") and changed it to E for "Expression"
but missed a spot.
[Thanks also to several other people who sent in similar messages. -John]
Return to the
Search the comp.compilers archives again.