From: fjh@mundook.cs.mu.OZ.AU (Fergus Henderson)
Subject: Re: Depending on passing mechanism
Date: 1997/10/19
Date: 1997-10-19T00:00:00+00:00 [thread overview]
Message-ID: <62ckao$827@mulga.cs.mu.OZ.AU> (raw)
In-Reply-To: Pine.BSF.3.96.971018110638.11035B-100000@shell5.ba.best.com
Brian Rogoff <bpr@shell5.ba.best.com> writes:
>On Fri, 17 Oct 1997, Henry Baker wrote:
>>
>> NIL/Hermes was from IBM.
>
>Right, my mistake.
>
>> 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.
>
>I'll have to find the ref where I thought I read about this. In any case,
>simply having a strong static type system does not guarantee no runtime
>overhead; you suggested the Haskell approach as a valid one. While Haskell
>code looks nice on paper the current compiler implementations are far from
>producing comparable code to gcc for similar problems.
The differences in efficiency are mostly due to unrelated factors:
- laziness
- different coding styles
Haskell code often allocates lots of garbage,
makes significant use of higher-order functions,
etc.
But a language which does have some support for unique types
and which generates code which is often comparable with gcc,
assuming similar coding styles in the source code, is Mercury
<http://www.cs.mu.oz.au/mercury>.
How close do you have to get to be "comparable"?
>What I would like
>to be convinced is
>
>(1) An actual pseudo-Ada syntax for "unique" types in Ada. Starting from
> there I could see exactly how your proposal would interact with the
> the current Ada.
Well, I'd go for unique modes, rather than unique types.
In addition to "in", "out", and "inout", add
"unique_in", "destructive_in", "unique_out", and "unique_inout",
with semantics similar to the unique modes in Mercury.
Some work would be required to specify the semantics precisely...
--
Fergus Henderson <fjh@cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh@128.250.37.3 | -- the last words of T. S. Garp.
next prev parent reply other threads:[~1997-10-19 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 ` 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 ` Brian Rogoff
1997-10-19 0:00 ` Robert Dewar
1997-10-22 0:00 ` Henry Baker
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 ` Brian Rogoff
1997-10-22 0:00 ` Jon S Anthony
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
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 [this message]
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-18 0:00 ` Fergus Henderson
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
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox