comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada OOP syntax
Date: Wed, 18 Jun 2008 14:30:55 +0200
Date: 2008-06-18T14:30:55+02:00	[thread overview]
Message-ID: <qyxgzqiyzaxx.1s4al9spmh88c$.dlg@40tude.net> (raw)
In-Reply-To: 2fde321e-7906-4050-a8c1-26069a8d0d65@j33g2000pri.googlegroups.com

On Wed, 18 Jun 2008 00:48:22 -0700 (PDT), markus034@gmail.com wrote:

> Especially, package types and package subtypes are very interesting.
> That syntax seems to be clearer than tagged types. I don't understand
> why it was rejected?

I don't know it. But in my eyes the drawbacks of the proposal are:

1. Impure (not all types have classes, there are methods and non-methods)
2. No multiple inheritance
3. No multiple dispatch
4. Conflating classes and packages (sets of types vs. visibility)
5. Self
6. Operators (multi-methods) are clumsy and have no access to the
implementation (a consequence of 1,3,4,5) 
7. Re-dispatch (inconsistent, performance hit)
8. Entries are confused with procedures (it is unclear when and if the
queue appear)
9. It is unclear (to me) how generic (class-wide) programming is
accomplished.

Though the Ada 95 model also has some of these problems (and many others
too), yet it did not damage the language, because there seem to be ways to
fix it. Tagged types are rather an outbuilding. The proposal would be a
total rebuild (IMO on the fundament of sand).

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  parent reply	other threads:[~2008-06-18 12:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-14 13:26 Ada OOP syntax Steve
2008-06-14 15:31 ` Dmitry A. Kazakov
2008-06-14 18:16 ` Oliver Kellogg
2008-06-18  2:14   ` Steve
2008-06-18  7:48     ` markus034
2008-06-18  9:58       ` christoph.grein
2008-06-18 12:30       ` Dmitry A. Kazakov [this message]
2008-06-14 19:24 ` Jeffrey R. Carter
2008-06-14 21:22 ` anon
2008-06-15 14:32   ` Dirk Heinrichs
2008-06-16  4:59     ` anon
2008-06-16  6:33       ` Dirk Heinrichs
2008-06-17 20:26         ` anon
replies disabled

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