TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
"Borgia, William M." <[log in to unmask]>
Wed, 1 Dec 1999 13:45:30 -0500
text/plain (41 lines)
        Rick Conn wrote:
        > You raise some very good concerns.  I'm glad to say
        > that VB is not the only language the CS dept uses.
        > The approach I'm taking with my Freshmen is that VB
        > is fun, easy to learn, and there is a lot of object
        > orientation there.  You can see my course slides
        > on my University website for the objects and classes
        > part of the course.  VB is kind of like a hook in
        > this case.  I also talk about Ada, by the way, in the
        > VB class.

        > I'm a firm believer in building in the students an
        > infrastructure they can use to move in any direction,
        > regardless of language or technology change.


        Of those three languages (VB, Ada and C++), VB is perhaps the worst
choice for an introductory course.  Sure, your statement about
infrastructure is correct, but consider the stronger infrastructure that the
students would likely develop with Ada as the introductory language.

        We don't need to start the whole argument again, but VB (and often
C++ and usually Java too) lacks some important characteristics inherent in
Ada.  These include strong enumerations, subtyping and ranging, generics,
meaningful parameter modes, tasking and a safe and elegant implementation of
pointers, to name a few.

        VB shines in how well Microsoft has integrated it into its Office
suite.  By the way, have they improved on error handling since the days of
"on error goto?"

        VB and C++ often teach introductory students bad habits.  An
instructor who exploits the best features of Ada will help ward off these
bad habits in the future.  Having this "infrastructure," the students would
be more likely to develop better applications in C++, Java, VB or whatever
when the time comes.  The converse is much less likely to happen.

        Bill Borgia