comp.lang.ada
 help / color / mirror / Atom feed
From: eachus@spectre.mitre.org (Robert I. Eachus)
Subject: Re: Idea for Ada 200x: Arguments that are procedures
Date: 1998/07/07
Date: 1998-07-07T00:00:00+00:00	[thread overview]
Message-ID: <EACHUS.98Jul7162415@spectre.mitre.org> (raw)
In-Reply-To: swhalenEvJBCC.6Er@netcom.com

In article <swhalenEvJBCC.6Er@netcom.com> swhalen@netcom.com (Steve Whalen) writes:

  > Also interesting is the thread you attached, especially the note that
  > this is the only thing that keeps Ada95 from being a proper superset
  > of Pascal! I guess that's one reason that Ada95's lack of downward
  > closures feels so "wrong" to me.

  Ada 83 and Ada 95 both support downward closures through use of
generics.  A few years ago I wrote some test programs not only to
verify that the language rules permitted it, but that the
implementations that used displays and/or shared generics got it
right.  At that time I talked to the implementors, in particular R&R
about how they implemented the feature, and found that, with a generic
instantiation, there is enough of a flag that something unusual is
happening that they didn't have to save and store contexts on every
procedure call, just when a generic is instantiated in an inner scope,
and the instantiation has a subprogram parameter, and that parameter
is from a nested scope.  Since the feature is "in there" for when it
is needed, I saw no reason to continue the fight for a simpler syntax.
(Jean Pierre Rosen was the first AFAIK to point out in an Ada 9X
context that generics could be used to implement downward closures, at
the meeting in Switzerland.  But there were Ada 83 validation tests
that required that it work there, so all compilers I tested
implemented it correctly.)
--

					Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




  parent reply	other threads:[~1998-07-07  0:00 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-07-03  0:00 Idea for Ada 200x: Arguments that are procedures Van Snyder
1998-07-02  0:00 ` Brian Rogoff
1998-07-02  0:00 ` Robert Dewar
1998-07-03  0:00 ` Steve Whalen
1998-07-03  0:00   ` Brian Rogoff
1998-07-03  0:00     ` Steve Whalen
1998-07-04  0:00       ` Larry Kilgallen
1998-07-07  0:00       ` Robert I. Eachus [this message]
1998-07-07  0:00         ` Brian Rogoff
1998-07-03  0:00   ` Robert Dewar
1998-07-03  0:00     ` Brian Rogoff
1998-07-03  0:00 ` Charles Hixson
1998-07-04  0:00   ` Larry Kilgallen
1998-07-06  0:00   ` Dr Richard A. O'Keefe
replies disabled

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