comp.lang.ada
 help / color / mirror / Atom feed
* Lack of formal syntax undermines Ada
@ 2008-04-11  9:41 usenet
  2008-04-11 11:20 ` Peter C. Chapin
                   ` (4 more replies)
  0 siblings, 5 replies; 38+ messages in thread
From: usenet @ 2008-04-11  9:41 UTC (permalink / raw)


Ada does not have a formal syntax. The LRM provides "syntax rules"
section by section, then collectively in Annex P. The resulting
woolly grammar is well-known to be ambiguous (e.g. is X:=Y(Z) an
assignment from a function call, array indexing or something
else?). It mixes lexical and syntactical information. It cannot
be used as the input to a parser generator. The interpretation
necessary via other sections of the LRM risks making the language
as a whole indefinite.

Ada is designed for the construction of high-integrity software
by validated compilers. Would it not be better to have formal
Ada lexical and syntactic rules, expressed in regular expression
and BNF format respectively, even if such rules turn out to be
not particularly readable?

As an example, my parser is having trouble with the fragment:
task type TT is
   pragma priority(12);
end TT;
Is this legal Ada95 syntax or not?

Regards,
Chris Noonan



^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2008-04-17  6:37 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-11  9:41 Lack of formal syntax undermines Ada usenet
2008-04-11 11:20 ` Peter C. Chapin
2008-04-15 12:57   ` usenet
2008-04-16  2:26     ` Peter C. Chapin
2008-04-16  3:14       ` Eric Hughes
2008-04-17  6:37     ` Randy Brukardt
2008-04-11 17:27 ` Georg Bauhaus
2008-04-11 18:13   ` Adam Beneschan
2008-04-11 21:25 ` John McCabe
2008-04-11 21:45   ` Robert A Duff
2008-04-11 22:37     ` John McCabe
2008-04-11 23:08       ` Adam Beneschan
2008-04-12  7:16         ` Dirk Craeynest
2008-04-14  7:23         ` Jean-Pierre Rosen
2008-04-12 12:57       ` Robert A Duff
2008-04-12 15:06         ` (see below)
2008-04-12 16:25           ` John McCabe
2008-04-12 17:55             ` (see below)
2008-04-12 22:19               ` John McCabe
2008-04-13  1:13                 ` (see below)
2008-04-13 11:51                   ` John McCabe
2008-04-13 14:13                     ` (see below)
2008-04-13 19:34                       ` John McCabe
2008-04-13 20:51                         ` (see below)
2008-04-13 21:06                           ` John McCabe
2008-04-12 17:16         ` Gary Scott
2008-04-12 18:43           ` Peter C. Chapin
2008-04-12 19:16             ` Gary Scott
2008-04-12 20:04               ` Robert A Duff
2008-04-12 23:32                 ` Gary Scott
2008-04-13  1:16                   ` Robert A Duff
2008-04-12 20:02           ` Robert A Duff
2008-04-12 20:52             ` Pascal Obry
2008-04-13 22:01       ` Florian Weimer
2008-04-13  9:46 ` anon
2008-04-15 13:22   ` usenet
2008-04-15 16:08     ` Adam Beneschan
2008-04-13 22:04 ` Florian Weimer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox