From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Language lawyer question: task activation
Date: Fri, 27 Feb 2009 17:29:10 -0600
Date: 2009-02-27T17:29:10-06:00 [thread overview]
Message-ID: <go9t07$lht$1@munin.nbi.dk> (raw)
In-Reply-To: 1vcaimc8kjj30$.kf3rsd670ebp$.dlg@40tude.net
"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
news:1vcaimc8kjj30$.kf3rsd670ebp$.dlg@40tude.net...
...
>> When a procedure P(Object: out T) returns, there
>> is a yield (in Object).
>
> No, it is not so. The actual of Object out T is constructed *prior* to
> call
> to P. In contrast the "actual" of F return T is not constructed (when T is
> limited). This is exactly the thing that worries me. Because it makes out
> T
> and return T different, while they are evidently same.
To you, maybe, but not in Ada. Even in Ada 83, "out T" and "return T" are
different:
procedure Foo (P : out String);
function Bar return String;
Bar creates a *new* object with unknown bounds; Foo takes an *existing*
object with whatever bounds it has. Totally different animals.
Build-in-place is a rather natural extension to this model. (It's annoying
that we don't have a way to do return-by-reference as well, but that's
another topic).
Now, I realize you have rather firm ideas about what represents a "proper
type model", but that's pretty much irrelevant to the Ada type model (which
isn't going to change for obvious compatibility reasons).
Randy.
next prev parent reply other threads:[~2009-02-27 23:29 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-19 17:37 Language lawyer question: task activation Adam Beneschan
2009-02-19 17:57 ` Dmitry A. Kazakov
2009-02-19 23:57 ` Robert A Duff
2009-02-20 13:22 ` Dmitry A. Kazakov
2009-02-23 7:36 ` Jean-Pierre Rosen
2009-02-20 5:43 ` christoph.grein
2009-02-20 10:44 ` Dmitry A. Kazakov
2009-02-20 11:14 ` christoph.grein
2009-02-20 12:07 ` mockturtle
2009-02-20 13:22 ` Dmitry A. Kazakov
2009-02-20 16:45 ` Georg Bauhaus
2009-02-20 18:41 ` Dmitry A. Kazakov
2009-02-20 22:19 ` Georg Bauhaus
2009-02-21 8:31 ` Dmitry A. Kazakov
2009-02-27 23:29 ` Randy Brukardt [this message]
2009-02-28 8:13 ` Why constructing functions is a mess [was Language lawyer question: task activation (was: Language lawyer question: task activation)) Dmitry A. Kazakov
2009-02-28 12:20 ` Why constructing functions is a mess [was Language lawyer question: task activation Georg Bauhaus
2009-02-28 13:45 ` Dmitry A. Kazakov
2009-02-28 15:36 ` Georg Bauhaus
2009-02-28 16:22 ` Dmitry A. Kazakov
2009-02-28 17:19 ` Georg Bauhaus
2009-02-28 17:48 ` Dmitry A. Kazakov
2009-02-28 18:39 ` Georg Bauhaus
2009-02-28 20:17 ` Dmitry A. Kazakov
2009-03-02 16:13 ` Georg Bauhaus
2009-03-02 17:46 ` Dmitry A. Kazakov
2009-03-02 18:50 ` Georg Bauhaus
2009-03-02 21:02 ` Dmitry A. Kazakov
2009-03-03 7:04 ` christoph.grein
2009-03-03 8:45 ` Dmitry A. Kazakov
2009-03-03 9:27 ` christoph.grein
2009-03-03 9:34 ` Dmitry A. Kazakov
2009-03-03 19:13 ` Pascal Obry
2009-03-04 5:29 ` christoph.grein
2009-03-04 8:32 ` Dmitry A. Kazakov
2009-03-04 9:05 ` christoph.grein
2009-03-04 9:47 ` Dmitry A. Kazakov
2009-02-28 23:12 ` Maciej Sobczak
2009-03-01 8:23 ` Dmitry A. Kazakov
2009-02-19 23:54 ` Robert A Duff
2009-02-20 10:18 ` Robert_Matthews
2009-02-20 10:34 ` christoph.grein
2009-02-20 14:16 ` Robert A Duff
2009-02-20 16:57 ` Robert_Matthews
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox