From: "Robert I. Eachus" <rieachus@attbi.com>
Subject: Re: What evil would happen?
Date: Wed, 16 Jul 2003 00:22:55 GMT
Date: 2003-07-16T00:22:55+00:00 [thread overview]
Message-ID: <3F149ADD.9040005@attbi.com> (raw)
In-Reply-To: vh8ejp1mhhla4a@corp.supernews.com
Randy Brukardt wrote:
> I've toyed with adding a mode to Janus/Ada to allow in out parameters on
> functions, but I haven't seen a compelling use for it (the most valuable
> uses would be in Claw, but that has to work with standard Ada).
And AFAIK, GNAT still supports the "value returning procedures pragmas
from DEC Ada.
But the rule still won't change, and the reason is not just "politics."
This is just one area of the Ada programming culture that seems to rub
foreigners (to Ada) the wrong way. If you are used to Ada, the current
Ada idioms for the few cases that seem to some people to be problems are
natural to you.
Since I have done a lot of work on random number generators, the Ada
idiom now seems natural to me:
function Random(Gen: in Generator) return ...
Local: Generator;
for Local'Address use Gen'Address;
begin
...
end Random;
Unlike RBKD, I did strongly argue for an in out parameter mode for
functions in Ada 9X. But in doing so I knew that it would be misused
more than it would be correctly used. By now with good implementations
of Unbounded_String, most of the real needs for functions with in out
parameters have gone away. You can always declare a procedure with an
out parameter of Unbounded_String. So if the question is reraised I
will vote against it. And I will also vote in favor of a generic that
provides the equivalent of Unbounded_String for all array types,
including multidimensional array types.
--
Robert I. Eachus
�In an ally, considerations of house, clan, planet, race are
insignificant beside two prime questions, which are: 1. Can he shoot? 2.
Will he aim at your enemy?� -- from the Laiden novels by Sharon Lee and
Steve Miller.
next prev parent reply other threads:[~2003-07-16 0:22 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-11 19:51 What evil would happen? Wojtek Narczynski
2003-07-11 20:07 ` Hyman Rosen
2003-07-12 12:30 ` Wojtek Narczynski
2003-07-12 17:17 ` Martin Dowie
2003-07-13 1:46 ` Hyman Rosen
2003-07-13 15:29 ` Wojtek Narczynski
2003-07-11 20:08 ` chris.danx
2003-07-12 4:31 ` Nick Roberts
2003-07-12 12:26 ` Wojtek Narczynski
2003-07-12 12:39 ` Preben Randhol
2003-07-12 13:11 ` Larry Kilgallen
2003-07-12 13:22 ` Preben Randhol
2003-07-12 19:04 ` Larry Kilgallen
2003-07-14 8:43 ` Preben Randhol
2003-07-14 10:32 ` Larry Kilgallen
2003-07-14 11:05 ` Preben Randhol
2003-07-14 11:31 ` Larry Kilgallen
[not found] ` <slrnbh53ir.48d.Organization: LJK Software <zSeTW0M3CTPU@eisner.encompasserve.org>
2003-07-14 17:31 ` Wojtek Narczynski
2003-07-13 15:26 ` Wojtek Narczynski
2003-07-13 17:28 ` Chad R. Meiners
2003-07-13 22:35 ` Wojtek Narczynski
2003-07-14 0:06 ` Chad R. Meiners
2003-07-13 22:36 ` Wojtek Narczynski
2003-07-14 3:01 ` Hyman Rosen
2003-07-14 4:41 ` Chad R. Meiners
2003-07-14 23:32 ` [ot] languages & academia was " chris.danx
2003-07-14 9:09 ` Dmitry A. Kazakov
2003-07-14 17:44 ` Chad R. Meiners
2003-07-14 18:15 ` tmoran
2003-07-15 8:06 ` Dmitry A. Kazakov
2003-07-11 21:26 ` Robert I. Eachus
2003-07-12 12:38 ` Wojtek Narczynski
2003-07-16 0:07 ` Robert I. Eachus
2003-07-16 8:11 ` Preben Randhol
2003-07-14 18:52 ` Randy Brukardt
2003-07-14 20:12 ` Hyman Rosen
2003-07-15 2:32 ` Alexander Kopilovitch
2003-07-15 8:19 ` Wojtek Narczynski
2003-07-15 17:33 ` Randy Brukardt
2003-07-16 0:22 ` Robert I. Eachus [this message]
2003-07-16 8:36 ` Dmitry A. Kazakov
2003-07-15 5:16 ` Kenneth Almquist
2003-07-15 11:31 ` Wojtek Narczynski
2003-07-18 8:23 ` Wojtek Narczynski
2003-07-18 14:45 ` Hyman Rosen
2003-07-19 0:55 ` Robert I. Eachus
-- strict thread matches above, loose matches on Subject: below --
2003-07-11 23:04 Beard, Frank Randolph CIV
2003-07-12 12:46 ` Wojtek Narczynski
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox