Re: Ada design

stt@copperfield.camb.inmet.com (Tucker Taft)
31 Jan 1996 23:29:19 -0500

          From comp.compilers

Related articles
Re: Possible to write compiler to Java VM? salomon@silver.cs.umanitoba.ca (1996-01-30)
Re: Ada design stt@copperfield.camb.inmet.com (1996-01-31)
Re: Ada design ncohen@watson.ibm.com (1996-01-31)
Re: Ada design rfg@monkeys.com (1996-02-01)
Re: Ada design salomon@silver.cs.umanitoba.ca (1996-02-02)
Re: Ada design adam@irvine.com (1996-02-02)
Re: Ada design blaak@mda.ca (1996-02-04)
| List of all articles for this month |

From: stt@copperfield.camb.inmet.com (Tucker Taft)
Newsgroups: comp.compilers,comp.lang.ada
Date: 31 Jan 1996 23:29:19 -0500
Organization: Intermetrics, Inc.
References: 96-01-130
Keywords: Ada, syntax

Daniel J. Salomon (salomon@silver.cs.umanitoba.ca) wrote:
: ...
: I would bet that a lot of the code that you wrote and was rejected by
: an Ada compiler was not that illogical or unsafe. I bet that most of
: it was actually pretty reasonable.


: Ada's philosophy seems to be, "When in doubt, forbid it." As a
: result, a programmer can spend a lot of time turning sensible safe
: code into code that religiously observes all of Ada rules.


Have you actually programmed a fair amount in Ada? In my experience
with Ada 83, 95% of the complaints by the compiler were appropriate
complaints about inconsistencies in my code, which would definitely be
bugs if not caught, and I was happy to put up with the 5% of "false
positives."


Of course, there were a few restrictions that typical Ada 83
programmers found arbitrary, such as the "named with others" rules for
array aggregates. We made an effort to eliminate all significant,
known, "arbitrary" restrictions in the Ada 9X revision process, and my
sense is that we have now achieved a situation where 99% of the
complaints from an Ada 95 compiler are justifiable.


: C's philosopy seems to be, "When in doubt, permit it. It just might
: be correct." The freedom that this gives programmers to create new
: ways of solving problems may be one of the reasons that C remains so
: popular, despite the fact that it it unquestionably unsafe.


This is definitely a reach. The notion that Ada 83 error messages
were getting in the way of creative problem solving is completely
unfounded. Over-picky compiler complaints are always easy to deal
with, and not having to spend so much time finding bugs at run-time
gives you a lot more time to get creative with the algorithm and data
structures.


On the other hand, you could legitimately complain about features
simply missing from Ada 83, such as a lack of pointers to procedures.
This is quite different from the issue of a picky compiler. Adding
support for dynamic binding, both via procedure pointers, and via true
object-oriented programming, was arguably the most important thing Ada
95 added to Ada, and admittedly does open up more avenues for creative
software solutions.


-Tucker Taft stt@inmet.com http://www.inmet.com/~stt/
Intermetrics, Inc. Cambridge, MA USA


--


Post a followup to this message

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