comp.lang.ada
 help / color / mirror / Atom feed
From: jordan@aero.org (Larry M. Jordan)
Subject: Re: ada-c++ productivity
Date: 15 Mar 91 22:46:26 GMT	[thread overview]
Message-ID: <1991Mar15.224626.27077@aero.org> (raw)
In-Reply-To: EACHUS.91Mar14190050@aries.mitre.org

"Something's" missing from this definition of OOP--Dynamic binding.
(also, OOPs don't require classes--see SELF).  I'd say we dismiss
the term OOP and talk about langs in term of features.

Inh. and dyn. binding are not enough.  There are other language
features I find desirable--parameterized types and exceptions.  What 
about library management?  What about environements with integrated 
debuggers? (I'd sure hate to build anything bigger than a hello world 
program without a library manager.  ).  Some may finding tasking essential.  
I did a comparison of lang. features a while back.  Some may find 
this interesting. 

Language	Inheritance	DynamicBnd'g	Type[T]	Except.	Task 	LibMgr
C++		yes-MI/class	yes-vft		no[1]	no[2]	no	hand
Objective-C	yes-SI/class	yes-tlu		no	no	no	hand
Smalltalk	yes-SI/class	yes-tlu		no	no	no	?
SELF		yes-MI/object	yes-?		no	no	no	?
TP6.0		yes-SI/class	yes-vft		no	no	no	auto
Eiffel		yes-MI/class	yes-vft		yes	yes	no	auto
Ada		yes[3]		no		no[4]	yes	yes	auto

MI=mult. inh.
SI=single inh.
vft=virtual function tables
tlu=run-time table lookup with caching
class=class-based inh.
object=object-based inh.
hand=hand crank a make file
auto=automated
?=don't know

[1] available next version
[2] available next version?
[3] derived types are not assignment compatible without casting.
[4] parameterized procedures and packages but not types		

I hate the C'ness of C++, but I find myself implementing many things in
C++ just because of inheritance and dynamic binding.  If Ada is ever
to become mainstream (and I seriously hope it does) inheritance and
dyn. binding had better be incorporated into the language.

--Larry

  reply	other threads:[~1991-03-15 22:46 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1991-03-07 16:31 ada-c++ productivity Craig C Johnson
1991-03-08 20:58 ` Jim Showalter
1991-03-10 15:12 ` Joachim Wiese
1991-03-13 23:12   ` Joe Buck
1991-03-15  1:00     ` Robert I. Eachus
1991-03-15 22:46       ` Larry M. Jordan [this message]
1991-03-16  0:06         ` Craig Chambers
1991-03-16 20:52           ` Ted Holden
1991-03-17  8:38             ` MUNTS PHILLIP A
1991-03-17 14:27             ` Ralph Reid III
1991-03-17 20:26               ` csq031
1991-03-18  4:57               ` Michael Feldman
1991-03-18 13:25               ` Matthew S. Granger
1991-03-18 23:17               ` Paul Stachour
1991-03-19 21:17                 ` Jim Showalter
1991-03-19 16:14               ` klimas
1991-03-25 22:01               ` Terry J. Westley
1991-03-18  2:12             ` Jim Showalter
1991-03-18 18:13             ` arny.b.engelson
1991-03-19  7:44               ` Jim Showalter
1991-03-18 22:12             ` martin
1991-03-16 19:02         ` Ralph Johnson
1991-03-19 16:40           ` klimas
1991-03-21  3:12             ` Jim Showalter
1991-03-17  0:47         ` Jim Showalter
1991-03-18 23:55           ` adam
1991-03-25 12:42         ` Steven D. Litvinchouk
1991-03-17  0:40     ` Jim Showalter
  -- strict thread matches above, loose matches on Subject: below --
1991-03-18 15:27 simonian richard 66449
     [not found] <668465900@<jls>
1991-03-20 14:03 ` ryer
1991-03-21 15:26   ` Gary W Smith
1991-03-21 18:50     ` Depriest
1991-03-26  2:32       ` Jim Showalter
1991-03-26 14:57         ` Michael Feldman
1991-03-27  3:09           ` Jim Showalter
1991-03-29 20:30 ` ryer
1991-04-01 14:15   ` Depriest
replies disabled

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