From: ka@socrates.hr.att.com (Kenneth Almquist)
Subject: Re: "Subtract C, add Ada"
Date: Fri, 6 Jan 1995 23:36:49 GMT
Date: 1995-01-06T23:36:49+00:00 [thread overview]
Message-ID: <D20C9D.Fs3@nntpa.cb.att.com> (raw)
In-Reply-To: 862035D1F1C@annwfn.com
In article <862035D1F1C@annwfn.com>, Fred McCall <merlin@annwfn.com> wrote:
> In <D1Msq8.4Hs@inmet.camb.inmet.com> mg@asp.camb.inmet.com Mitch Gart writes:
>
>> Ada leaves less room for single-keystroke
>> errors, such as the common C error of using = (assignment) instead of
>> == (comparison);
>
> I've always been curious. Just *where* is this a "common C error"?
> I've seen lots of beginners and non-C programmers claim it is, but I
> don't recall ever hearing of anyone who knew what they were doing (and
> who was using a real tool -- say, lint -- to check their code) making
> it.
I confuse "=" and "==" periodically even though I've used C for years.
I generally don't use lint. I just ran this "real tool" on the program:
#include <stdio.h>
#include <stdlib.h>
main(int argc, char **argv) {
printf("hello, world\n");
exit(0);
}
The result is four useless messages:
hello.c(4): syntax error at or near type word "int"
hello.c(7): warning: main() returns random value to invocation environment
exit value declared inconsistently llib-lc(236) :: hello.c(6)
printf returns value which is always ignored
>> its type-abstraction facilities reduce the need for
>> error-prone pointer manipulation;
>
> Afraid this one doesn't seem to make sense. How does being able to
> define a dozen incompatible types of integer "reduce the need for
> error-prone pointer manipulation"?
I'm not sure what was intended here either. Ada has generic packages
and procedures, which makes it easier to write type-safe library routines
which manipulate pointers.
>> and its modular facilities improve
>> teams' coordination of effort.
>
> Both languages are modular. I'm not sure how this is a 'win' unless
> we're talking about totally inexperienced teams.
I took a software engineering course in which included a group project.
The group I was in defined all of the interfaces in Modula 2. Some of
the code was written in C because nobody on the project knew Modula 2
well, but I don't think we would have had a chance of completing the
project in the ten weeks allotted if we hadn't used Modula 2 for the
interfaces.
>> This experience, McCormick notes, "has convinced all my faculty
>> colleagues to support teaching Ada in our beginning courses. This
>> spring semester, the first student with Ada as their mother tongue
>> will enroll in my course. I can only imagine what these teams will
>> accomplish".
>
> Well, Ada is certainly a better choice than C for a beginning language
> to teach design concepts, etc. However, that isn't necessarily saying a
> whole lot, since that wasn't what C was intended for. I'm also not sure
> why that would be considered a 'plus', unless the idea behind Ada was to
> come up with a good language for beginners; that wasn't the idea behind
> it.
C was intended for (or at least the early feedback on its design came
from) programmers writing individual programs. In contrast, Ada was
explicitly designed to support multi-person projects. It is nice to
see that the relative usefulness of these languages for group projects
reflects the intentions of the language designers.
Kenneth Almquist
next prev parent reply other threads:[~1995-01-06 23:36 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
1994-12-30 16:06 "Subtract C, add Ada" Mitch Gart
1995-01-03 19:04 ` whiting_ms@corning.com (Matt Whiting)
1995-01-05 4:31 ` Michael Feldman
1995-01-04 21:40 ` Fred McCall
1995-01-05 4:30 ` Richard Pattis
1995-01-05 16:07 ` Kevin Weise
1995-01-06 13:06 ` Jahn Rentmeister
1995-01-06 16:47 ` Laurent Gasser
1995-01-06 17:29 ` David Weller
1995-01-06 17:30 ` David Weller
1995-01-10 18:28 ` Bob Kitzberger
1995-01-06 23:36 ` Kenneth Almquist [this message]
1995-01-04 22:45 ` Jay M. Martin
1995-01-05 4:37 ` Michael Feldman
1995-01-05 18:08 ` Jay Martin
1995-01-05 23:56 ` Robert Dewar
1995-01-08 8:04 ` Jay Martin
1995-01-06 0:07 ` Michael M. Bishop
1995-01-10 21:30 ` Jay Martin
[not found] <3etund$hnr@miranda.gmrc.gecm.com>
1995-01-12 9:56 ` Erik Svensson
1995-01-12 14:44 ` Norman H. Cohen
1995-01-13 1:51 ` David O'Brien
1995-01-13 12:38 ` Laurent Gasser
1995-01-13 20:53 ` John DiCamillo
[not found] ` <3f8fnf$c8p@gamma.ois.com>
1995-01-16 11:02 ` Matt Kennel
[not found] ` <milodD2IFpG.329@netcom.com>
1995-01-17 21:39 ` R. William Beckwith
[not found] ` <3fa11q$sdh@gnat.cs.nyu.edu>
1995-01-16 20:20 ` David Moore
1995-01-14 0:24 ` David O'Brien
1995-01-20 4:43 ` Samuel Mize
1995-01-21 20:28 ` David O'Brien
1995-01-22 21:12 ` Robert Dewar
1995-01-23 18:35 ` Norman H. Cohen
1995-01-23 19:18 ` John Cosby - The Coz
1995-01-24 14:11 ` Samuel Mize
1995-01-14 10:37 ` Keith Thompson
[not found] ` <3fcjgt$b0v@cronkite.seas.gwu.edu>
1995-01-16 18:47 ` Robert Dewar
[not found] ` <D2It0r.4rp@inmet.camb.inmet.com>
1995-01-17 14:11 ` Norman H. Cohen
[not found] <3fdcoi$chn@miranda.gmrc.gecm.com>
1995-01-20 5:01 ` Samuel Mize
1995-01-20 22:07 ` Garlington KE
1995-01-24 5:02 ` R_Tim_Coslet
[not found] <3fgphd$sc3@rational.rational.com>
1995-01-20 5:51 ` RonaldS60
1995-02-07 13:55 ` Robert C. Soong
-- strict thread matches above, loose matches on Subject: below --
1995-01-20 9:33 R.A.L Williams
1995-01-20 10:20 R.A.L Williams
1995-01-20 13:22 ` Renaud HEBERT
1995-01-24 3:35 ` David Moore
1995-01-25 5:38 ` Robert Dewar
1995-01-28 16:35 ` Jules
1995-01-29 8:06 ` Matt Kennel
1995-01-30 5:31 ` Michael Feldman
1995-01-31 22:22 ` David O'Brien
1995-01-24 20:23 ` N. Mellor
1995-01-25 8:50 ` Robb Nebbe
1995-01-25 14:19 ` John Volan
1995-01-26 5:07 ` Samuel Mize
1995-01-26 18:51 ` Mark A Biggar
1995-01-21 15:18 ` Robert Dewar
1995-01-21 21:03 ` David O'Brien
1995-01-23 3:09 ` Jay Martin
1995-01-23 12:50 ` Andrew McConnell
1995-01-24 0:54 ` Matt Kennel
1995-01-25 17:03 ` Norman H. Cohen
1995-01-26 1:13 ` Dr. Richard Botting
1995-01-26 14:32 ` Anders Juul Munch
1995-01-24 0:17 ` Bob Kitzberger
1995-01-23 20:46 ` Robert Firth
1995-01-24 14:25 ` Samuel Mize
1995-01-25 7:27 ` David O'Brien
1995-01-25 12:14 ` Robert A Duff
1995-01-25 5:57 ` David O'Brien
[not found] ` <3g9rf0$71k@Starbase.NeoSoft.COM>
1995-01-28 21:08 ` David O'Brien
1995-01-31 18:07 ` Samuel Mize
1995-02-01 10:23 ` Samuel Mize
1995-01-30 0:24 ` Mark S. Hathaway
1995-01-31 3:30 ` Jay Martin
1995-02-01 13:25 ` Jesper Kaagaard
1995-01-23 8:49 R.A.L Williams
1995-01-25 23:18 ` Charles H. Sampson
1995-01-31 9:34 R.A.L Williams
1995-02-01 16:45 ` Charles H. Sampson
[not found] <3gsr0e$oin@miranda.gmrc.gecm.com>
1995-02-07 16:58 ` Mark S. Hathaway
1995-02-08 7:39 ` Travis C. Porco
1995-02-08 16:07 ` Fred J. McCall
1995-02-08 21:30 ` Garlington KE
1995-02-10 13:49 R.A.L Williams
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox