comp.lang.ada
 help / color / mirror / Atom feed
From: koehnema@enuxhb.eas.asu.edu (Harry Koehnemann)
Subject: Re: Ichibah flames, and flames out over, Ada 9X
Date: Mon, 15 Mar 1993 23:19:16 GMT
Date: 1993-03-15T23:19:16+00:00	[thread overview]
Message-ID: <1993Mar15.231916.16276@ennews.eas.asu.edu> (raw)
In-Reply-To: 1993Mar13.031104.21673@telesoft.com

In article <1993Mar13.031104.21673@telesoft.com> kst@telesoft.com (Keith Thompson @pulsar) writes:
>
>Once I had made that connection, I didn't have any problem understanding
>what access types are and how they work; most of what I had learned about
>Pascal pointer types applied almost directly to Ada access types.

And look how the word "access" has completely removed "pointer" or
"reference" from existence in the CS world :).  But really, why take a
very well understood concept and name it something completely off the
wall.  Didn't Ada desire to facilitate understanding, rather than get
in it's way?

>My point is that these minor differences in terminology (pointers vs.
>access types, classes vs. tagged types, functions returning void vs.
>procedures) really don't matter.  It should take literally no more than
>a few seconds to make the connection between similar features in
>different languages, once the correlation is pointed out.

This of course is not true.  The mapping between a Pascal "pointer"
variable and an Ada "access" variable is well understood.  Only minor
semantic differences exist between the two.  However, no such mapping
exists between a Smalltalk/Eiffel/C++ "class" and an Ada "tagged type/
package/generic/task" (objects with separate threads of control).

I'll contend that translating an OO design into the Ada paradigm is not
a straight forward activity for someone raised on these other languages
(if it is a straight forward activity at all).  It is certainly not as
trivial as making the transition from pointers to access types (if you
can call "access" = "pointer" a transition).

>The Ada 9X reference manual should probably have a note pointing out
>the correlation between tagged types and the various class constructs
>of C++ and other object-oriented languages.

This is not as simple as it might seem and if anything would probably
do more harm than good.  If you're going to use a new paradigm, learn
it, understand it, and *then* build smoething in it.  Don't take the
cheesy way out and use some mechanical translation algorithm without
understanding what's being created.  I can already see the subject
line: "Wanted C++ to Ada9X translator".  I'd love to see that Ada code.

>-- 
>Keith Thompson (The_Other_Keith)  kst@telesoft.com
>TeleSoft^H^H^H^H^H^H^H^H Alsys, Inc.
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Now that's funny.
--
Harry Koehnemann			Arizona State University
koehnema@enuxha.eas.asu.edu		Computer Science Department



  parent reply	other threads:[~1993-03-15 23:19 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1993-03-10 20:15 Ichibah flames, and flames out over, Ada 9X John Goodsen
1993-03-10 22:41 ` David Emery
1993-03-12 16:01   ` Tom Pole
1993-03-12 22:59     ` Charles H. Sampson
1993-03-16 17:35       ` Classes versus tagged types was " Tom Pole
1993-03-18 16:28         ` In favor of tagged types (was Classes versus tagged types was Ichibah flames, and flames out over, Ada 9X) Stephane Barbey
1993-03-19 18:13           ` Larry M. Jordan
1993-03-13  3:11     ` Ichibah flames, and flames out over, Ada 9X Keith Thompson @pulsar
1993-03-14 15:03       ` Fergus James HENDERSON
1993-03-15 23:19       ` Harry Koehnemann [this message]
1993-03-16  2:50         ` Michael Feldman
1993-03-17 18:18         ` Robert Firth
1993-03-12 22:02   ` Anthony Howell
1993-03-11  8:33 ` Ichibah [sic] " Magnus Kempe
  -- strict thread matches above, loose matches on Subject: below --
1993-03-11 15:13 Ichibah " Tucker Taft
1993-03-10 20:39 John Goodsen
1993-03-07 19:15 John Goodsen
1993-03-08  0:45 ` David Emery
1993-03-08 15:36 ` Tucker Taft
1993-03-08 16:28   ` Michael Feldman
1993-03-08 22:15     ` Gregory Aharonian
1993-03-09 14:20       ` Tucker Taft
1993-03-09 14:55         ` C. Michael Holloway
1993-03-10 14:51         ` Gregory Aharonian
1993-03-09 17:12       ` Harry Koehnemann
1993-03-09 20:54         ` Michael Feldman
1993-03-09 20:14       ` Larry M. Jordan
1993-03-09 17:49     ` Harry Koehnemann
1993-03-09 21:01       ` Michael Feldman
1993-03-09 18:12   ` Tom Wicklund
1993-03-09 18:53   ` Larry M. Jordan
1993-03-09 20:24     ` David Weller
1993-03-09 21:03       ` Michael Feldman
1993-03-12 14:49         ` Tucker Taft
1993-03-12 23:54           ` Michael Feldman
1993-03-16 17:34   ` Robert Firth
1993-02-26 22:58 Bob Munck
1993-02-28 18:42 ` Don Tyzuk
1993-03-04 22:44   ` news
1993-03-05  2:39     ` Richard Pattis
1993-03-05 11:36     ` David Weller
1993-03-05 12:06     ` Don Tyzuk
1993-02-26 16:26 enterpoop.mit.edu!linus!agate!howland.reston.ans.net!paladin.american.edu
1993-02-26 14:35 David Emery
1993-02-25 23:51 Mark A Biggar
1993-02-24 21:10 John Goodsen
1993-02-25  3:48 ` agate!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!ne
1993-02-25 17:08   ` Harry Koehnemann
1993-03-01 15:59     ` Tucker Taft
1993-03-02  7:43       ` Dag Bruck
1993-02-22 23:56 Robert I. Eachus
1993-02-22 19:32 asuvax!ennews!enuxhb.eas.asu.edu!koehnema
1993-02-17 14:50 agate!howland.reston.ans.net!wupost!darwin.sura.net!mlb.semi.harris.com!d
1993-02-17 11:54 agate!howland.reston.ans.net!sol.ctr.columbia.edu!The-Star.honeywell.com!
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox