From: "Robert I. Eachus" <rieachus@comcast.net>
Subject: Re: Free Ada parser
Date: Mon, 15 Dec 2003 12:45:41 -0500
Date: 2003-12-15T12:45:41-05:00 [thread overview]
Message-ID: <J5CdnX5HZcjbbkCiRVn-tA@comcast.com> (raw)
In-Reply-To: <6a6390b8.0312141049.1cafb783@posting.google.com>
Oliver Kellogg wrote:
> True, I had to resolve a couple of those ambiguities
> while developing the ANTLR Ada grammar, but once you
> really get into the ANTLR way of thinking it's not too bad.
> Plus, this is a single-shot problem - it only affects the
> development of the grammar itself but not its users.
It is a property of writing grammars in general, doesn't matter how good
the tools are. If you write a grammar and it is say, LALR2 instead of
LALR1, how likely is it that the tools can point to what you will think
is the error?
Very unlikely of course. The error that you made will almost certainly
be some production with a lookahead of one. It is one or more
potential prefixes of that production that will need to have a lookahead
of two.
So when I am creating a grammar, I start with a 'skeleton' that has all
the main features, then add details like identifier lists in object
declarations. Since I check the grammar after every extension, the
problem must involve one of the productions I just added.
--
Robert I. Eachus
100% Ada, no bugs--the only way to create software.
next prev parent reply other threads:[~2003-12-15 17:45 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-09 18:10 Free Ada parser J Quirce
2003-12-09 19:27 ` David C. Hoos
2003-12-10 13:10 ` Oliver Kellogg
2003-12-10 8:11 ` Ole-Hjalmar Kristensen
2003-12-13 22:57 ` Craig Carey
2003-12-14 1:50 ` Craig Carey
2003-12-14 18:49 ` Oliver Kellogg
2003-12-15 17:45 ` Robert I. Eachus [this message]
-- strict thread matches above, loose matches on Subject: below --
2003-12-11 14:50 ada_wizard
2003-12-12 21:05 ` Colin Paul Gloster
2003-12-13 3:02 ` Steve
2003-12-13 16:46 ` Pascal Obry
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox