comp.lang.ada
 help / color / mirror / Atom feed
From: hbaker@netcom.com (Henry Baker)
Subject: Re: Depending on passing mechanism
Date: 1997/10/17
Date: 1997-10-17T00:00:00+00:00	[thread overview]
Message-ID: <hbaker-1710970933080001@10.0.2.1> (raw)
In-Reply-To: Pine.BSF.3.96.971016131014.2530A-100000@shell5.ba.best.com


In article <Pine.BSF.3.96.971016131014.2530A-100000@shell5.ba.best.com>,
Brian Rogoff <bpr@shell5.ba.best.com> wrote:

> On Wed, 15 Oct 1997, Henry Baker wrote:
> > In article <622b4t$nhe$1@gonzo.sun3.iaf.nl>, Geert Bosch
> > <geert@gonzo.sun3.iaf.nl> wrote:
> > > ... about non-determinism and Ada parameter passing ...
> > > 
> > > Do you have a proposal to remove the non-determinism without affecting
> > > performance and flexibility too much? I think many readers in this
> > > group might be interested in such ideas, at least I am.
> > > 
> > > Regards,
> > >    Geert
> > 
> > 3.  Add a new concept to your language: 'linear'/'unique' types.  These
> > objects are guaranteed to be singly referenced because this is enforced
> > by the type system.  Poof!  No aliasing!  This concept was pioneered by
> > NIL/Hermes, and has recently been incorporated into some logical
(prolog-like)
> > languages and some functional languages ('Clean' from KU Leaven). 
There is a
> > large and growing body of mathematics called 'linear logic' that puts linear
> > types on a firm theoretical foundation.
> 
> I remember reading something about NIL a long time ago (this is from Bell
> Labs, right?) and their notion of "typestates", which I think what I
> think you are talking about, and I thought that they stated that there was
> a fairly  significant performance overhead in their use, and hence they
> wouldn't be really suitable in the role that you are proposing for them in
> Ada. Anyone have different information?
> 
> -- Brian

NIL/Hermes was from IBM.

There was no performance overhead that I heard of.  On the contrary, by
performing the typing analysis at compile time, there was no runtime
overhead.

NIL/Hermes was not doing rocket science, but merely doing 'right' what
people in the real-time and OS communities had been doing for years
already.  NIL/Hermes put in type-checking to make sure that when something
is supposed to be used/referenced only once, the compiler can prove this
mathematically.  I'll bet that nearly every Ada program has objects that
are intended to be used/referenced only once, but since there is no compiler
support for this notion, the software cannot be checked at compile time,
and is vulnerable to programmers later doing 'maintenance'.




  reply	other threads:[~1997-10-17  0:00 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-10-13  0:00 Depending on passing mechanism Andre Spiegel
1997-10-13  0:00 ` Matthew Heaney
1997-10-14  0:00 ` Robert Dewar
1997-10-14  0:00   ` Henry Baker
1997-10-15  0:00     ` Geert Bosch
1997-10-15  0:00       ` Robert Dewar
1997-10-15  0:00         ` Robert Dewar
1997-10-17  0:00           ` Andre Spiegel
1997-10-17  0:00             ` Henry Baker
1997-10-17  0:00               ` Jon S Anthony
1997-10-17  0:00               ` Robert I. Eachus
1997-10-21  0:00               ` Robert A Duff
1997-10-21  0:00                 ` Peter Hermann
1997-10-22  0:00                   ` Robert A Duff
1997-10-22  0:00                     ` Brian Rogoff
1997-10-22  0:00                 ` Henry Baker
1997-10-21  0:00                   ` Robert Dewar
1997-10-22  0:00                   ` Jon S Anthony
1997-10-22  0:00                   ` Brian Rogoff
1997-10-15  0:00         ` Brian Rogoff
1997-10-19  0:00           ` Robert Dewar
1997-10-22  0:00             ` Henry Baker
1997-10-15  0:00       ` Henry Baker
1997-10-15  0:00         ` Jon S Anthony
1997-10-15  0:00         ` Robert Dewar
1997-10-16  0:00         ` Brian Rogoff
1997-10-17  0:00           ` Henry Baker [this message]
1997-10-18  0:00             ` Fergus Henderson
1997-10-18  0:00             ` Brian Rogoff
1997-10-18  0:00               ` Matthew Heaney
1997-10-19  0:00                 ` Brian Rogoff
1997-10-21  0:00                   ` Robert A Duff
1997-10-22  0:00                     ` Robert Dewar
1997-10-22  0:00                       ` Brian Rogoff
     [not found]                         ` <dewar.877601826@merv>
1997-10-23  0:00                           ` Brian Rogoff
1997-10-23  0:00                       ` Henry Baker
1997-10-23  0:00                     ` Brian Rogoff
1997-10-19  0:00               ` Fergus Henderson
1997-10-19  0:00                 ` Brian Rogoff
1997-10-20  0:00                   ` Fergus Henderson
1997-10-20  0:00                 ` Henry Baker
1997-10-20  0:00                   ` Tucker Taft
1997-10-21  0:00                     ` Geert Bosch
1997-10-15  0:00     ` JP Thornley
1997-10-21  0:00     ` Robert A Duff
1997-10-22  0:00       ` Henry Baker
1997-10-21  0:00         ` Matthew Heaney
1997-10-22  0:00           ` Simon Wright
1997-10-23  0:00           ` Henry Baker
1997-10-23  0:00             ` Pat Rogers
1997-10-24  0:00             ` Robert Dewar
1997-10-23  0:00         ` Robert A Duff
1997-10-21  0:00   ` Keith Thompson
1997-10-14  0:00 ` Robert Dewar
replies disabled

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