comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <bauhaus@futureapps.invalid>
Subject: Re: Why is the destructor called multiple times after I declare an object?
Date: Thu, 14 Jan 2016 11:04:28 +0100
Date: 2016-01-14T11:04:28+01:00	[thread overview]
Message-ID: <n77rmb$d0c$1@dont-email.me> (raw)
In-Reply-To: <n76aag$3qo$1@gioia.aioe.org>

On 13.01.16 20:59, Dmitry A. Kazakov wrote:
> Sure, some object is always returned and every object is always same to itself. This is not sufficient to define useful "in-place". In my view a definition must have the place known at the caller's context. E.g. to have the object:
>
> 1. Allocated at a specific machine address
> 2. Allocated by an allocator in the specific memory pool
> 3. Allocated as a specific component of a container object
> 4. Allocated as a parent of a derived type object
>
> The problem of returned object is that it conflates allocation with initialization.

If Ada will have a way for the caller to express the placement of new objects
to be constructed in situ by functions, might we then go back to just
return-by-reference in the hope of abandoning "return-by-access"?

I.e., in this case, the caller could request that a limited object
be placed, e.g., on the stack, after having been initialized by the function.
Or that it become a named component of some other object.

-- 
"HOTDOGS ARE NOT BOOKMARKS"
Springfield Elementary teaching staff

  reply	other threads:[~2016-01-14 10:04 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-11  1:37 Why is the destructor called multiple times after I declare an object? Andrew Shvets
2016-01-11  2:18 ` Jeffrey R. Carter
2016-01-11  3:35   ` Andrew Shvets
2016-01-11 17:02     ` Brian Drummond
2016-01-11 16:29   ` Brian Drummond
2016-01-11 17:20     ` Simon Wright
2016-01-11 18:17     ` Bob Duff
2016-01-11 21:10       ` Dmitry A. Kazakov
2016-01-11 23:44         ` Randy Brukardt
2016-01-12  9:33           ` Dmitry A. Kazakov
2016-01-12 20:21             ` Randy Brukardt
2016-01-12 21:05               ` Dmitry A. Kazakov
2016-01-13  0:02                 ` Robert A Duff
2016-01-13  8:31                   ` Dmitry A. Kazakov
2016-01-13  9:01                     ` Georg Bauhaus
2016-01-13 14:45                     ` J-P. Rosen
2016-01-13 20:09                       ` Dmitry A. Kazakov
2016-01-14  9:04                         ` J-P. Rosen
2016-01-14  9:47                           ` Dmitry A. Kazakov
2016-01-13 16:03                     ` Robert A Duff
2016-01-13 19:59                       ` Dmitry A. Kazakov
2016-01-14 10:04                         ` Georg Bauhaus [this message]
2016-01-14 13:42                           ` Dmitry A. Kazakov
2016-01-12 12:41       ` Brian Drummond
2016-01-13 20:18       ` Jacob Sparre Andersen
2016-01-14  1:31         ` Robert A Duff
2016-01-12  0:43     ` Jeffrey R. Carter
replies disabled

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