[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