Mike, John, & maybe Ron know this, but there has been a recent
discussion thread on the SIGCSE.Members mailer about the merits of the
CS AP exam going to C++ in '99, the merits of multiple- vs
single-language emphasis in CS programs, the merits of various
languages in various places in the CS curriculum, and the merits of
teaching OO at the introductory level, etc. I am forwarding to you
below a recent post (which makes several nice summary points by
itself) showing that Ada is very visible in this discussion among the
1/3 of 2000 SIGCSE members who have joined the list server. Read the
2nd and last (4th) paragraphs below.
While C++ and Java have been mentioned more than Ada across the 10-20
msgs in this thread, Ada has been mentioned often enough (probably 3rd
most often) that I am very satisfied that its visibility and
credibility in academia are competitive, and not noticeably losing
ground. (... factoring out predicted near-term "rushes to judgment"
to switch to Java and then the predicted degrees of disappointment
with that move)
Enjoy. -- Hal
------- Forwarded Message
Date: Tue, 16 Dec 1997 15:53:42 -0500
Reply-To: Kim Bruce <[log in to unmask]>
Sender: SIGCSE Member Forum <[log in to unmask]>
From: Kim Bruce <[log in to unmask]>
Subject: Re: STL, C++, Java, etc.
To: [log in to unmask]
I agree with some of what Bonnie says. In particular, I believe that it
is going to be hard for faculty (college, university, or high school) to
make the shift to teaching the OO-paradigm. (That's partially why the
CS AP exam is not going to really teach OO stuff - just object-based.)
We definitely need good books, and faculty need to read and write some
good sized programs and read some good texts and articles to really get
a sense of what this is all about.
However, if we are going to move to the OO paradigm (and many of us believe
this is a very good idea - at least by CS2 and probably in CS1), I believe
we should do it in a language which is supportive of programmers, especially
beginners. Java has a much simpler conceptual model than C++ (all objects
being references leads to many simplifications), and garbage collection is
a big win for novices (and experts!). The lack of support for generics
is the main problem. Benefits include standard support for concurrency
(yep, Ada includes that too), and reasonably good standard libraries for
building graphic-user interfaces. (Flame bait: How many programs these
days take input from the keyboard as opposed to data entered through a GUI?
Shouldn't students be learning how to set up those rather than arcane
notions dating back to command-line interfaces and card input?)
Compilers and development environments are getting better every year. I
definitely do not agree that beginners should be taught using a vanilla
command line interface. We should use the computer to make irrelevant and
annoying things easier, especially for novices. I want the best debugger
available and I want it to make it as easy as possible to find the source
of errors. In fact, I've wished we had more money available to buy
industrial strength tools like "real" programmers use.
Finally, let me agree that a "single-language" curriculum would be bad.
I note that tendency among many of my colleagues, but would rather students
saw enough differences among languages to appreciate that each language
has its strengths and weaknesses. I would be sad if any of Java, C++, or
Ada were to remain as the "ultimate" programming language. Students should
be prepared to switch languages over time and with different tasks.
------- End of Forwarded Message