comp.lang.ada
 help / color / mirror / Atom feed
From: "Vinzent Hoefler" <nntp-2010-10@t-domaingrabbing.de>
Subject: Re: Ada is getting more popular!
Date: Sat, 30 Oct 2010 02:01:46 +0200
Date: 2010-10-30T02:01:46+02:00	[thread overview]
Message-ID: <op.vlc3o8za0k3wt7@jellix.jlfencey.com> (raw)
In-Reply-To: op.vlcsb8nkule2fv@garhos

On Fri, 29 Oct 2010 21:56:22 +0200, Yannick Duchêne (Hibou57) <yannick_duchene@yahoo.fr> wrote:

> I would enjoy to learn more about what's wrong with inheritance (I know
> this cannot model every thing of real life, but here the area is more
> restricted) and as much about classification without inheritance (I
> understand classification does not implies inheritance, but I would like
> to understand how and why inheritance should be avoided).

Just having inheritance is not really a problem. Basically you get inheritance
with each Ada subtype you derive from another, because the new subtype inherits
the operation from its parent subtype:

     type Saturated_Integer is new Natural;

Thus, inheritance is very hard to avoid in Ada. Now suppose:

     function "+" (Left, Right : Saturated_Integer) return Saturated_Integer
     is
     begin
        return
          Saturated_Integer (Saturated_Integer'Base (Left) +
                             Saturated_Integer'Base (Right));
     exception
        when Constraint_Error =>
           return Saturated_Integer'Last;
     end;

So, in the object oriented view the above already uses overriding and view
conversion.

The problems start with the dynamic properties, where the operations on the
types can not be resolved statically anymore, because these are very hard
to prove for correctness. They may even call subroutines which are completely
out of the scope of the unit you're calling it from.

And if you don't want (or are not allowed, because the Software Programmer's
Manual says so) to use class-wide programming, then there's usually no point
in using inheritance at all. ;)

Well, I better shut up now, Jean-Pierre is the expert on that, I am just a
user. ;)


Vinzent.

-- 
There is no signature.



  parent reply	other threads:[~2010-10-30  0:01 UTC|newest]

Thread overview: 128+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-13  7:15 Ada is getting more popular! Nasser M. Abbasi
2010-10-13 12:07 ` ramon_garcia
2010-10-13 14:51   ` Georg Bauhaus
2010-10-13 17:00     ` Dmitry A. Kazakov
2010-10-14 22:10       ` Robert A Duff
2010-10-15  7:27         ` Dmitry A. Kazakov
2010-10-13 15:04   ` Mark Lorenzen
2010-10-13 18:01   ` Jeffrey Carter
2010-10-13 18:50     ` mockturtle
2010-10-13 21:53     ` ramon_garcia
2010-10-13 22:34       ` Vinzent Hoefler
2010-10-13 22:49         ` Nasser M. Abbasi
2010-10-13 23:00           ` ramon_garcia
2010-10-13 23:21             ` Jeffrey Carter
2010-10-14  0:57             ` Georg Bauhaus
2010-10-15 12:12             ` Jacob Sparre Andersen
2010-10-24 22:10               ` Yannick Duchêne (Hibou57)
2010-10-13 22:49         ` ramon_garcia
2010-10-13 23:05           ` Vinzent Hoefler
2010-10-14  4:59             ` Simon Wright
2010-10-14 18:45               ` Vinzent Hoefler
2010-10-14 18:48                 ` Vinzent Hoefler
     [not found]       ` <i95f0n$j61$1@tornado.tornevall.net>
2010-10-14  5:03         ` Simon Wright
2010-10-13 20:17   ` Vinzent Hoefler
2010-10-13 22:05   ` Simon Wright
2010-10-14  2:20   ` tmoran
2010-10-24 22:15     ` Yannick Duchêne (Hibou57)
2010-10-25  0:14       ` Georg Bauhaus
2010-10-24 21:21   ` Yannick Duchêne (Hibou57)
2010-10-25  0:12     ` Georg Bauhaus
2010-10-25  7:43       ` Yannick Duchêne (Hibou57)
2010-10-25  7:52       ` Dmitry A. Kazakov
2010-10-25  8:07         ` Georg Bauhaus
2010-10-25  9:21           ` Dmitry A. Kazakov
2010-10-25  9:47         ` Ludovic Brenta
2010-10-25 10:33           ` Dmitry A. Kazakov
2010-10-25 11:00             ` Ludovic Brenta
2010-10-25 13:24               ` Dmitry A. Kazakov
2010-10-31 19:59                 ` Yannick Duchêne (Hibou57)
2010-10-25 19:06               ` Yannick Duchêne (Hibou57)
2010-10-25 22:39                 ` Thomas Løcke
2010-10-25 23:29                   ` Yannick Duchêne (Hibou57)
2010-10-26  6:29                     ` Thomas Løcke
2010-10-26 14:33                       ` Colin Paul Gloster
2010-10-26 13:59                         ` Dmitry A. Kazakov
2010-10-27 11:59                           ` Colin Paul Gloster
2010-10-27 13:07                             ` Dmitry A. Kazakov
2010-10-27 17:51                               ` Laziness (Was: Re: Ada is getting more popular!) Jeffrey Carter
2010-10-27 20:51                                 ` Yannick Duchêne (Hibou57)
2010-11-03 18:02                               ` Ada is getting more popular! Colin Paul Gloster
2010-11-03 20:52                                 ` Dmitry A. Kazakov
2010-11-04  1:27                                   ` Yannick Duchêne (Hibou57)
2010-11-04  1:30                                 ` Yannick Duchêne (Hibou57)
2010-10-26 18:29                         ` Thomas Løcke
2010-10-27 11:32                           ` Colin Paul Gloster
2010-10-27 19:28                             ` Thomas Løcke
2010-10-27 19:38                               ` Thomas Løcke
2010-10-27 20:46                               ` Yannick Duchêne (Hibou57)
2010-10-28  6:06                                 ` Thomas Løcke
2010-10-28  8:19                                   ` Dmitry A. Kazakov
2010-10-28  9:41                                     ` Thomas Løcke
2010-10-28 13:01                                       ` Dmitry A. Kazakov
2010-10-28 18:21                                         ` Thomas Løcke
2010-10-28 20:18                                           ` Dmitry A. Kazakov
2010-10-28 20:33                                             ` Ludovic Brenta
2010-10-28 21:19                                               ` Dmitry A. Kazakov
2010-10-28 23:37                                                 ` Georg Bauhaus
2010-10-29  8:00                                                   ` Dmitry A. Kazakov
2010-10-29  9:19                                                     ` Georg Bauhaus
2010-10-29 10:03                                                       ` Dmitry A. Kazakov
2010-10-29 16:55                                                       ` Yannick Duchêne (Hibou57)
2010-10-30  9:50                                                       ` Florian Weimer
2010-10-30 12:58                                                         ` Georg Bauhaus
2010-10-30 17:48                                                           ` Florian Weimer
2010-10-30 18:50                                                             ` Yannick Duchêne (Hibou57)
2010-10-30 19:02                                                             ` Georg Bauhaus
2010-10-30 19:26                                                               ` Dmitry A. Kazakov
2010-10-30 20:57                                                                 ` Georg Bauhaus
2010-10-31  7:48                                                                   ` Dmitry A. Kazakov
2010-10-31 10:59                                                                     ` Georg Bauhaus
2010-10-31 12:36                                                                       ` Dmitry A. Kazakov
2010-10-30 18:17                                                           ` Yannick Duchêne (Hibou57)
2010-10-29 16:51                                                     ` Yannick Duchêne (Hibou57)
2010-10-28 21:02                                             ` Thomas Løcke
2010-10-28 21:31                                               ` Dmitry A. Kazakov
2010-10-28 21:28                                           ` Brian Drummond
2010-10-29  5:13                                             ` Thomas Løcke
2010-10-29 14:04                                               ` Brian Drummond
2010-10-29 14:03                                                 ` Thomas Løcke
2010-10-30  6:23                                                   ` Brian Drummond
2010-10-29  0:31                                       ` Chad  R. Meiners
2010-10-29 11:47                                       ` stefan-lucks
2010-10-28 17:25                                     ` Warren
2010-10-28  9:12                                   ` J-P. Rosen
2010-10-28 17:02                                     ` Yannick Duchêne (Hibou57)
2010-10-28 17:58                                     ` Nicholas Collin Paul Gloster
2010-10-28 18:17                                       ` J-P. Rosen
2010-10-29 18:59                                         ` Vinzent Hoefler
2010-10-29 19:56                                           ` Yannick Duchêne (Hibou57)
2010-10-29 20:28                                             ` J-P. Rosen
2010-10-29 21:51                                               ` Yannick Duchêne (Hibou57)
2010-10-31  1:35                                               ` Yannick Duchêne (Hibou57)
2010-10-31  5:02                                                 ` Yannick Duchêne (Hibou57)
2010-10-31  6:42                                                   ` Yannick Duchêne (Hibou57)
2010-10-31 10:38                                                   ` J-P. Rosen
2010-10-31 10:54                                                     ` Dmitry A. Kazakov
2010-10-31 12:54                                                       ` J-P. Rosen
2010-10-31 14:57                                                         ` Dmitry A. Kazakov
2010-10-31 13:57                                                       ` Niklas Holsti
2010-10-31 21:02                                                         ` Niklas Holsti
2010-11-02  9:15                                                           ` J-P. Rosen
2010-10-31 14:39                                                       ` Yannick Duchêne (Hibou57)
2010-10-31 17:21                                                       ` Jeffrey Carter
2010-10-31 18:04                                                       ` Jeffrey Carter
2010-10-31 20:00                                                         ` Dmitry A. Kazakov
2010-10-31 18:06                                                     ` Jeffrey Carter
2010-10-30  0:01                                             ` Vinzent Hoefler [this message]
2010-10-30  0:30                                               ` Yannick Duchêne (Hibou57)
2010-10-30 17:00                                                 ` Vinzent Hoefler
2010-10-26  0:10                   ` Yannick Duchêne (Hibou57)
2010-10-25 12:06             ` Georg Bauhaus
2010-10-25 13:41               ` Dmitry A. Kazakov
2010-10-25 14:55                 ` Georg Bauhaus
2010-10-25 19:33             ` Yannick Duchêne (Hibou57)
2010-10-26 20:37             ` Shark8
2010-10-25 11:49           ` J-P. Rosen
2010-10-25 19:58             ` Yannick Duchêne (Hibou57)
2010-10-25 19:17           ` Yannick Duchêne (Hibou57)
replies disabled

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