comp.lang.ada
 help / color / mirror / Atom feed
From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: User Defined Storage Pool : did you ever experiment with it ?
Date: Tue, 8 Feb 2011 05:40:05 -0800 (PST)
Date: 2011-02-08T05:40:05-08:00	[thread overview]
Message-ID: <88b1f41c-1260-432d-9c81-3b060e269d6f@k22g2000yqh.googlegroups.com> (raw)
In-Reply-To: 0829d66f-2252-4709-83d9-b8a8f3e44158@y36g2000pra.googlegroups.com

On Feb 8, 12:57 am, Shark8 <onewingedsh...@gmail.com> wrote:

> > [*] For the sake of comparison, the passive iterator idiom that is
> > currently used with containers is not inline-friendly.
>
> Why do you say that?
> I personally don't mind doing something like:
> Declare
>   Procedure Iterate ( Position : In Cursor ) is
>    begin
>      --- Implementation.
>    end iterate;
> Begin
>   Container.Iterate( Iterate'Access );
> End;

I don't mind to do that, either.

> as the scope for Iterate is perfectly contained to where I want to
> apply the procedure;

Yes, but my point was not about how do I, as a programmer, perceive
this additional procedure, but how the compiler copes with indirect
calls via access value. It looks like this is too much for the
compiler to do full inlining of the above, which can hit the
performance considerably, especially when your local procedure itself
is lightweight, which is frequently the case.

--
Maciej Sobczak * http://www.inspirel.com



  reply	other threads:[~2011-02-08 13:40 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-22  0:04 User Defined Storage Pool : did you ever experiment with it ? Yannick Duchêne (Hibou57)
2011-01-22  0:55 ` Adam Beneschan
2011-01-22  1:42   ` Yannick Duchêne (Hibou57)
2011-01-22  5:19   ` Randy Brukardt
2011-01-22  8:49 ` Dmitry A. Kazakov
2011-01-22  9:47 ` User Defined Storage Pool : Example anon
2011-01-22  9:54 ` User Defined Storage Pool : did you ever experiment with it ? AdaMagica
2011-01-24  9:57   ` Yannick Duchêne (Hibou57)
2011-01-24 10:48   ` Mark Lorenzen
2011-01-22 15:13 ` Simon Wright
2011-01-24  9:56   ` Yannick Duchêne (Hibou57)
2011-01-24 16:09     ` Simon Wright
2011-01-24 23:58   ` Yannick Duchêne (Hibou57)
2011-01-22 22:17 ` Fritz Wuehler
2011-01-24  9:52   ` Yannick Duchêne (Hibou57)
2011-01-24 14:20     ` Bill Findlay
2011-01-24  9:25 ` Ludovic Brenta
2011-01-24  9:43   ` Yannick Duchêne (Hibou57)
2011-01-24 13:43     ` Emmanuel Briot
2011-01-24 16:48       ` Dirk Craeynest
2011-01-25  1:16         ` Yannick Duchêne (Hibou57)
2011-01-24 11:46 ` Jacob Sparre Andersen
2011-01-24 23:51   ` Yannick Duchêne (Hibou57)
2011-02-10  7:59     ` Jacob Sparre Andersen
2011-02-13 15:56       ` AdaMagica
2011-02-13 19:10         ` Simon Clubley
2011-01-24 14:04 ` Timo Warns
2011-01-24 23:34   ` Yannick Duchêne (Hibou57)
2011-01-25  0:14     ` Yannick Duchêne (Hibou57)
2011-01-25  1:36       ` Randy Brukardt
2011-02-06 20:05         ` Yannick Duchêne (Hibou57)
2011-02-07 22:09           ` Randy Brukardt
2011-02-07 22:18           ` Randy Brukardt
2011-02-07 22:59             ` Maciej Sobczak
2011-02-07 23:57               ` Shark8
2011-02-08 13:40                 ` Maciej Sobczak [this message]
2011-02-10  2:08               ` Randy Brukardt
2011-02-08  9:08             ` Alex R. Mosteo
2011-01-26 20:13 ` Warren
replies disabled

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