comp.lang.ada
 help / color / mirror / Atom feed
* Re: True confessions RE:Multiple Inheritance
  1997-09-25  0:00 True confessions RE:Multiple Inheritance Michael.P.Card
@ 1997-09-25  0:00 ` Brian Rogoff
  1997-09-27  0:00 ` Matthew Heaney
  1997-09-30  0:00 ` Tarjei Jensen
  2 siblings, 0 replies; 5+ messages in thread
From: Brian Rogoff @ 1997-09-25  0:00 UTC (permalink / raw)



On Thu, 25 Sep 1997 Michael.P.Card@lmco.com wrote:
> Ingo Pakleppa (ingop@cts.com) wrote RE: absence of MI in Java:
> >
> >In my almost ten years of C++ programming, I have used multiple
> >inheritance maybe 10 times at the most, and 80% of that was for mix-in
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
<... snip ...>
> >So - when I started Java, I thought I was going to miss MI, but by now
> >find that I don't really need it in the first place.
> 
> The reason I thought this worthy of mention is that I have seen Ada
> bashed for not suppporting MI. The use of generics/tagged types for
> mixin inheritance has been described as a poor substitute for "the
> real thing", and the advocates for some other languages often crow
> about their support of "true MI." I have also seen many posts comp-
> laining about the complexity of using "true MI" on the newsgroups of
> these languages, however.

Which languages? The quote mentions C++, Eiffel programmers I've heard
acknowledge that MI in C++ is difficult, but claim that Eiffel makes it 
easy, and I'll grant that MI in Eiffel is better.

FWIW, I agree that MI is overrated, and that the Ada 95 designers were 
right to avoid adding some kind of MI. I don't find the Ada idioms for 
doing MI ugly or opaque at all, quite the opposite, whereas the Eiffel
workarounds for the lack of modules and binary functions are heinous in my
eyes. Thats not to say that there are no improvements to Ada OO that can
be made (that old withing thang) but MI is not one of them.

-- Brian






^ permalink raw reply	[flat|nested] 5+ messages in thread

* True confessions RE:Multiple Inheritance
@ 1997-09-25  0:00 Michael.P.Card
  1997-09-25  0:00 ` Brian Rogoff
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Michael.P.Card @ 1997-09-25  0:00 UTC (permalink / raw)



I thought everyone might enjoy the following post which appeared on
comp.lang.eiffel this evening:

Ingo Pakleppa (ingop@cts.com) wrote RE: absence of MI in Java:

>Where is the problem? A book is loanable - but being loanable is not an
>intrinsic feature of the book, when you are talking about real-life
>books (this may be different if you are developing a library check-out
>application, where loanable is the primary information of interest). So
>just derive BOOK from PUBLICATION, implement the LOANABLE interface, and
>contains a LOANABLEOBJECT member. All you have to actually implement,
>you just have to provide the member functions that forward all calls to
>the embedded LOANABLEOBJECT.
>
>In my almost ten years of C++ programming, I have used multiple
>inheritance maybe 10 times at the most, and 80% of that was for mix-in
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>classes such as making objects collectable - where interfaces are
>actually better than MI.
>
>So - when I started Java, I thought I was going to miss MI, but by now
>find that I don't really need it in the first place.

The reason I thought this worthy of mention is that I have seen Ada
bashed for not suppporting MI. The use of generics/tagged types for
mixin inheritance has been described as a poor substitute for "the
real thing", and the advocates for some other languages often crow
about their support of "true MI." I have also seen many posts comp-
laining about the complexity of using "true MI" on the newsgroups of
these languages, however.

We have done a lot of work here with Ada 95 and I believe we are really
pushing the limits of the language as we attempt to build a real-time
object database management engine in Ada. I have been continually
impressed by the work done by the Ada 95 team. On our program, we do
not have a need for "true MI", so the fact that Ada doesn't have it
has never bothered us. Posts like the one I quoted here lead me to
believe that the Ada 95 team did the right thing when they omitted it.

- Mike

---------------
Michael P. Card
Lockheed Martin Ocean, Radar and Sensor Systems Division
Syracuse, NY 13221
voice: (315)-456-3022  FAX: (315)-456-2414  e-mail:card@syr.lmco.com

-------------------==== Posted via Deja News ====-----------------------
      http://www.dejanews.com/     Search, Read, Post to Usenet




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: True confessions RE:Multiple Inheritance
  1997-09-25  0:00 True confessions RE:Multiple Inheritance Michael.P.Card
  1997-09-25  0:00 ` Brian Rogoff
@ 1997-09-27  0:00 ` Matthew Heaney
  1997-10-09  0:00   ` Shmuel (Seymour J.) Metz
  1997-09-30  0:00 ` Tarjei Jensen
  2 siblings, 1 reply; 5+ messages in thread
From: Matthew Heaney @ 1997-09-27  0:00 UTC (permalink / raw)



In article <875229433.29719@dejanews.com>, Michael.P.Card@lmco.com wrote:

>The reason I thought this worthy of mention is that I have seen Ada
>bashed for not suppporting MI.

Ada has been bashed for everything.  I still haven't figured out why, but
in every shop I've visited, there's always someone who thinks Ada isn't
good enough.  (In fact, right now I'm working on a project where the
designer tried to "simulate" inheritance in Ada 83, and the result is a
bloody mess - a total obfuscation of the language.)

The primary complaint about Ada 83 was that it didn't have inheritance
(type extension) and polymorphism.  So when Ada 95 came out, I figured that
that would mollify all the critics.  But surprisingly not!  The latest
fusillade takes the form of "it doesn't have MI," "the mixin approach using
generics is inelegant," "it doesn't have pre- and postconditions, so
obviously it isn't suitable for design by contract," etc, etc, etc.  

It's hard to argue with someone who's argument against the language is that
it's "inelegant."  Perhaps von Neumann computers are inelegant too?

Somehow - the pundits must wonder how! - we Ada programmers are able to
write actual programs simply and easily using such an awkward, inelegant
language.  What we need to do is keep carrying the torch, because sooner or
later people will figure out that Ada really is a pretty good language.

So sally forth, and don't give up!

--------------------------------------------------------------------
Matthew Heaney
Software Development Consultant
<mailto:matthew_heaney@acm.org>
(818) 985-1271




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: True confessions RE:Multiple Inheritance
  1997-09-25  0:00 True confessions RE:Multiple Inheritance Michael.P.Card
  1997-09-25  0:00 ` Brian Rogoff
  1997-09-27  0:00 ` Matthew Heaney
@ 1997-09-30  0:00 ` Tarjei Jensen
  2 siblings, 0 replies; 5+ messages in thread
From: Tarjei Jensen @ 1997-09-30  0:00 UTC (permalink / raw)



Someone I know says that Tom Love is an authority on OO programming. He also
claims that Tom Love actively discourages multiple inheritance.



Greetings,
-- 
// Tarjei T. Jensen 
//    tarjeij@ulrik.uio.no || fax +47 51 85 87 01 || voice +47 51 85 87 39
//   Support you local rescue centre: GET LOST!
// Working, but not speaking for the Norwegian Hydrographic Service.




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: True confessions RE:Multiple Inheritance
  1997-09-27  0:00 ` Matthew Heaney
@ 1997-10-09  0:00   ` Shmuel (Seymour J.) Metz
  0 siblings, 0 replies; 5+ messages in thread
From: Shmuel (Seymour J.) Metz @ 1997-10-09  0:00 UTC (permalink / raw)



Matthew Heaney wrote:
> 
> Ada has been bashed for everything.  I still haven't figured out why, but
> in every shop I've visited, there's always someone who thinks Ada isn't
> good enough. 

Of course Ada isn't good enough: what language is? But if it's better
than 
the language that the basher is pushing, I'll use Ada. I will still be
aware 
of it's defects, and possibly know of more defects than the basher does,
but
unless I have a superior alternative on the platform I'm using ...

> (In fact, right now I'm working on a project where the
> designer tried to "simulate" inheritance in Ada 83, and the result is a
> bloody mess - a total obfuscation of the language.)

A general problem with newbies is that the try to write in "x" as though
it were "y". PL/I is a clean language, but some of the ugliest code I've
ever
seen was PL/I code written by people who were still thinking FORTRAN.

> So sally forth, and don't give up!

I don't know Sally and have never used FORTH <g, d & r>

> Matthew Heaney

-- 

                        Shmuel (Seymour J.) Metz
                        Senior Software SE

The values in from and reply-to are for the benefit of spammers:
reply to domain eds.com, user msustys1.smetz or to domain gsg.eds.com,
user smetz. Do not reply to spamtrap@library.lspace.org




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~1997-10-09  0:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-09-25  0:00 True confessions RE:Multiple Inheritance Michael.P.Card
1997-09-25  0:00 ` Brian Rogoff
1997-09-27  0:00 ` Matthew Heaney
1997-10-09  0:00   ` Shmuel (Seymour J.) Metz
1997-09-30  0:00 ` Tarjei Jensen

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