comp.lang.ada
 help / color / mirror / Atom feed
From: Martin Krischik <krischik@users.sourceforge.net>
Subject: Re: memory management and productivity
Date: Mon, 21 Jun 2004 18:47:45 +0200
Date: 2004-06-21T18:47:45+02:00	[thread overview]
Message-ID: <1374354.xRstPWWbXB@linux1.krischik.com> (raw)
In-Reply-To: 1087831367.30099@master.nyc.kbcfp.com

Hyman Rosen wrote:

> Martin Krischik wrote:
>> For example C++ std::vector<> can't store polymorvic objects - Ada soon
>> to come Ada.Containers.Indefinite_Vectors can.
> 
> That seems like a neat trick, given that a vector is
> intended to work like an array,
> that is, to have a 
> contiguous block of equal-sized objects.

It only has to work like it - internally it might be implemented differently
i.E. using dynamic memory.

> How is the 
> container going to work?

The trick is that Ada can "clone ()" objects without:

class Base
{
   virtual Base* clone();
}

That's because Ada knows (by hidden size attribute) how large any object is.
Including polymorvic objects. Write any indefinite object to a Stream via
'Output and look at it with hex editor.

In that respect Ada is even cooler then Java: You can serialise any object
without a Serialiseable interface.

So, the truth is that the object is copied into dynamic memory. However, you
will never know about it.

With Regards

Martin

-- 
mailto://krischik@users.sourceforge.net
http://www.ada.krischik.com




  reply	other threads:[~2004-06-21 16:47 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-17  4:56 memory management and productivity Russ
2004-06-17  5:15 ` tmoran
2004-06-17  8:07 ` Martin Dowie
2004-06-18 23:10   ` Russ
2004-06-19  9:04     ` Martin Dowie
2004-06-21  4:16       ` Russ
2004-06-21  7:29         ` Jano
2004-06-21  8:02           ` Martin Dowie
2004-06-21  8:22             ` Jano
2004-06-21  9:07               ` Martin Dowie
2004-06-21 22:36             ` Brian May
2004-06-22  7:47               ` Martin Dowie
2004-06-21  8:14           ` Ole-Hjalmar Kristensen
2004-06-21  8:27             ` Jano
2004-06-21  8:29             ` Martin Dowie
2004-06-22  7:53               ` Ole-Hjalmar Kristensen
2004-06-26 15:44                 ` Robert I. Eachus
2004-06-21 16:31             ` Frank J. Lhota
2004-06-22  7:58               ` Ole-Hjalmar Kristensen
2004-06-21  8:14           ` Martin Krischik
2004-06-21 15:22             ` Hyman Rosen
2004-06-21 16:47               ` Martin Krischik [this message]
2004-06-21 17:51           ` Hyman Rosen
2004-06-22 17:02             ` Pascal Obry
2004-06-26 15:54             ` Robert I. Eachus
2004-06-21  7:46         ` Martin Dowie
2004-06-21 19:03           ` Russ
2004-06-22  2:39             ` David Starner
2004-06-22  8:03               ` Ole-Hjalmar Kristensen
2004-06-23  4:41                 ` Russ
2004-06-23  7:41                   ` Martin Dowie
2004-06-23 17:36                     ` Björn Persson
2004-06-23 22:06                       ` David Starner
2004-06-24  0:34                         ` Björn Persson
2004-06-24  6:45                           ` Martin Krischik
2004-06-24 10:27                             ` Wes Groleau
2004-06-23 23:02                       ` Russ
2004-06-26 16:16                         ` Robert I. Eachus
2004-06-23 13:11                   ` Larry Kilgallen
2004-06-23 17:21                     ` Björn Persson
2004-06-24  7:35                       ` Ole-Hjalmar Kristensen
2004-06-26 17:10                         ` Simon Wright
2004-06-23 18:18                     ` Russ
2004-06-23 23:18                       ` David Starner
2004-06-23 22:15                     ` Larry Kilgallen
     [not found]                     ` <bebbba07.0406231018.21Organization: LJK Software <IKJODEu6UfVI@eisner.encompasserve.org>
2004-06-24  6:40                       ` Russ
2004-06-26 16:33                         ` Robert I. Eachus
2004-06-29  0:33                           ` Randy Brukardt
2004-06-24 13:29                     ` Stephen Leake
2004-06-24 14:09                       ` Hyman Rosen
2004-06-24 19:58                         ` Frank J. Lhota
2004-06-25  1:30                         ` Stephen Leake
2004-06-25  2:15                         ` Russ
2004-06-24 19:26                       ` Russ
2004-06-25  1:37                         ` Stephen Leake
2004-06-25 10:13                           ` Ole-Hjalmar Kristensen
2004-06-26  0:20                             ` David Starner
2004-06-25 23:35                           ` Russ
2004-06-26 11:27                             ` Martin Dowie
2004-06-26 13:45                             ` Ed Falis
2004-06-26 20:38                               ` Russ
2004-06-26 21:36                                 ` Ludovic Brenta
2004-06-27  7:54                                   ` Dmitry A. Kazakov
2004-06-26 17:20                             ` Robert I. Eachus
2004-06-25  8:52                         ` David Starner
2004-06-24 20:51                     ` Larry Kilgallen
2004-06-22  6:09             ` Martin Krischik
2004-06-22 10:20             ` Georg Bauhaus
2004-06-26 16:00             ` Robert I. Eachus
2004-06-21  8:23         ` Dmitry A. Kazakov
  -- strict thread matches above, loose matches on Subject: below --
2004-06-21 10:33 Christoph Karl Walter Grein
2004-06-21 10:38 ` Jano
replies disabled

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