[GAP] My Ada Class - May 18, 2005
Riehle, Richard USA
rdriehle at nps.edu
Thu May 12 00:24:19 CEST 2005
Since this is a discussion about academic use of Ada,
I am sharing a little bit about my class today at NPS.
The reason for sharing this is that I am in a particularly
good mood, due largely to the positive responses of my
students toward Ada.
We are three days into the study of Ada. Students have
already had two Quarters of Java, a smattering of Scheme
and Lisp, a dollop of C, and enough C++ to give them the
mental equivalent of gastritis.
Today we were using AdaGide (thanks Martin) and GNAT to
experiment with a generic stack package along with a test
program to see how it might work. I remember when generics were
a bone of contention with programmers learning Ada 83. My NPS
students, having already suffered through learning more
popular languages have been saying how much they like
what they have seen of Ada, so far.
Some of this has to do with the excellent didactic properties
of AdaGide such as enlarging fonts, tiling programs so every
unit can be seen at the same time, and the ease of compilation
and building. Of particular value is the simplicity of the
AdaGide model; there is no need to create projects, or make
decisions about issues that, although of real value in industrial
development, get in the way of learning.
I am reminded, this being the 100th anniversary of Einstein's
most important work, of his remark that, "Everything should be
as simple as possible, but not simpler." AdaGide is just simple
enough for the beginning Ada student, but not simpler.
In the stack test procedure, we add an exception handling
capability that uses JEWL to display a message box. It is
so easy that one is almost embarrassed to mention it. Yet,
the students like JEWL message boxes much better than
text_IO for the same purpose.
My point is that learning Ada can be fun. We don't have to
trivialize the education to make it fun. As we progress
through the quarter, the students will learn to write tasking
programs, do dynamic binding, use protected types, and engage
their minds in issues such as scope and visibility. They
will gain an appreciation of the language first, then get
deeper into the more serious issues related to safety-critical
software, including limited types, etc.
I have been teaching Ada for well over fifteen years, starting
with classes in Oakland at Merritt college. I have taught Ada
to many industry and contracting organizations, to DoD organizations,
and at several colleges. The tools now available do make my
job more rewarding. Also, the experience of the students is more
satisfying. The tools are better than anything we have had in
the past. If we had had these tools available to us in the
mid-80's, the popularity of Ada would probably be much higher.
Richard Riehle
More information about the GAP
mailing list