comp.lang.ada
 help / color / mirror / Atom feed
From: mfeldman@seas.gwu.edu (Michael Feldman)
Subject: Re: A Pascal Subset of Ada (was: Why Ada is Failing Socially)
Date: 26 Jun 91 03:24:22 GMT	[thread overview]
Message-ID: <3377@sparko.gwu.edu> (raw)
In-Reply-To: 1991Jun25.201958.13285@netcom.COM

In article <1991Jun25.201958.13285@netcom.COM> jls@netcom.COM (Jim Showalter) writes:
>>One of the biggest mistakes of AJPO (or whoever made the decision) was to
>>disallow Ada subsets.  I think they should have allowed ONE subset, 
>>corresponding roughly to Pascal and including packages.
>
>There was no need--Modula-2 already existed... ;-)

Well, not quite. Wirth's first edition appeared in 1982, contemporaneous with
the Ada standard-adoption process. M2 was little known till the 2nd ed.,
at least a year later.

Having translated a book _from_ Ada _to_ Modula-2, I can say from hard
personal experience that Modula-2 is really Ada-- :-).

Seriously, the biggest differences (other than the lack of generics) are:

1. Ada guarantees pointers initialized to null, M2 does not (BIG convenience).
2. Ada allows multidimensional unconstrained arrays, M2 does not (BIG
   convenience in writing matrix handlers).
3. Ada does not restrict the return type of a function, M2 has the outdated
   Pascal rule restricting function returns to scalar types. (BIG convenience
   for those who like functional notation).
4. Ada does not restrict the form of a private type; M2 restricts it to
   pointers (BIG convenience for those who believe that use of pointers
   should be limited to linked structures, by and large).
5. Ada allows overloaded subprogram names, M2 does not (e.g. the I/O
   library in M2 has WriteInt, WriteReal, WriteString, WriteCard, WriteFoo,
   WriteBar, etc. etc. In Ada you can call them all PUT).

M2 has substantial portability problems, by the way. Especially in the
libraries.

As for the "Pascal subset + packages" issue: both TeleSoft and Janus/Ada
sold "incomplete" implementations for years. Essentially, both were missing
generics and most of tasking. As far as I know, DoD never complained. These 
systems were quite readily available and in wide use. My department trained 
HUNDREDS of students on the TeleSoft VMS and VM interim systems. So let's get 
the facts straight. No, DoD wouldn't VALIDATE a partial implementation, but
the assertion that DoD squelched these is just plain BS. Only validated
(or at least validatable) compilers are currently being sold because that
is what the market demands, including educators. Please, guys - validation
(or at least validatability) is a part of the Ada culture most of us wouldn't
give up. I'd love it if the behavior of compilers for other languages were
as dependable as it is for Ada.

[By "validatability" I mean a compiler that has at least passed the current
ACVC in-house, even without a DoD site visit. This is enough for me. The
site visit is EXPENSIVE. I will take the word of a vendor unless he is proved
to be lying. DoD can't afford to, which is why they use the 5-sided 
certification mark these days. But it's quite legal to sell a compiler
called Ada, even if it doesn't carry the mark (has been since '88).]

By the way - "subsets" will be effectively a part of Ada9x, in the sense
that there will be a core language with "annexes" containing e.g. realtime,
info. systems, graphics, rep specs, etc. Not all compilers will be required
to support all annexes. So the subset fans will get their way in the end.
(Of course, they may STILL argue that the _required_ subset is too big,
but some people are impossible to satisfy...)

Mike

  reply	other threads:[~1991-06-26  3:24 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1991-06-25  2:28 A Pascal Subset of Ada (was: Why Ada is Failing Socially) Larry Carroll
1991-06-25 15:42 ` Charles H. Sampson
1991-06-26 20:38   ` Jim Showalter
1991-06-27  9:57     ` Orville R. Weyrich
1991-06-27 17:10     ` Charles H. Sampson
1991-06-26 23:43   ` George C. Harrison, Norfolk State University
1991-06-27 20:45     ` Michael Feldman
1991-06-28 10:07       ` Matthias Ulrich Neeracher
1991-06-27 23:50     ` Jim Showalter
1991-06-30 10:32     ` Richard A. O'Keefe
1991-07-01  2:43       ` Michael Feldman
1991-06-25 20:19 ` Jim Showalter
1991-06-26  3:24   ` Michael Feldman [this message]
1991-06-27  7:45     ` Jim Showalter
1991-06-27 12:25       ` Matthias Ulrich Neeracher
1991-06-27 20:51         ` Michael Feldman
1991-06-27 23:52         ` Jim Showalter
1991-06-28  9:53           ` Matthias Ulrich Neeracher
1991-06-27 20:49       ` Michael Feldman
1991-06-25 23:13 ` Rahul Dhesi
1991-06-25 23:35 ` fisher
1991-06-26  1:02 ` Andrew Dunstan
1991-06-26  7:03   ` Doug_Grant
  -- strict thread matches above, loose matches on Subject: below --
1991-06-26 18:21 Richard Pattis
replies disabled

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