comp.lang.ada
 help / color / mirror / Atom feed
From: Robert A Duff <bobduff@world.std.com>
Subject: Re: Ada Annex E (Just curious :-)
Date: Wed, 7 Mar 2001 21:04:14 GMT
Date: 2001-03-07T21:04:14+00:00	[thread overview]
Message-ID: <wccu255i94h.fsf@world.std.com> (raw)
In-Reply-To: 9863jf$nph$1@nh.pace.co.uk

"Marin David Condic" <marin.condic.auntie.spam@pacemicro.com> writes:

> What you're saying is that you'd do some sort of extension to System.RPC and
> fill in the read/write/do_rpc stuff? The dispatching handles the rest? That
> would go a long way to making it fairly easy to modify the behavior to get
> what you want.

Package RPC is just an interface -- the package spec defines the
interface between the compiler's generated code and the lower-level
message-passing stuff.  The Ada programmer writes the *body* of this
package.  (The compiler writer can provide one or more bodies, of
course, but it doesn't have to.)

Given that the semantics of this interface are defined in the RM, having
the user write this body does not constitute hacking on the compiler's
internals, as you seemed to think before.

You should read RM-E.5.  Also DR-8652/0087 (that's paragraph
E.5(24.1/1-24.2/1) in the October 2000 version of the AARM -- the one
with DR's inserted).

The other problem you mentioned is non-portability of the
representations supported by 'Read and 'Write; their default behavior is
implementation defined, so in a heterogeneous environment, you will have
to write your own.  I wish we had been more ambitious, and designed more
built-in support for heterogeneous systems.  In this "internet age",
that would be a pretty cool thing.

> In general, I've not been 100% happy with the behavior of streams and the
> 'Read & 'Write stuff.

I must admit: there were many language design mistakes in this area:
look at all the AI's that came out of this section.

- Bob



  reply	other threads:[~2001-03-07 21:04 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <yJSm6.8482$X_2.140961@news1.oke.nextra.no>
2001-02-28 13:28 ` Ada Annex E (Just curious :-) Marc A. Criley
2001-03-01 17:33   ` Frank
2001-03-02 17:42     ` Robert Spooner
     [not found]       ` <x7vu25bcl22.fsf@smaug.pushface.org>
2001-03-05 19:26         ` Robert Spooner
2001-03-02  9:38 ` Pascal Obry
2001-03-04 19:12   ` Dr Adrian Wrigley
2001-03-05 14:56     ` Ted Dennison
2001-03-05 16:24       ` Marin David Condic
2001-03-06  1:24         ` Dr Adrian Wrigley
2001-03-06 14:51           ` Ted Dennison
2001-03-06 15:23             ` Marin David Condic
2001-03-06 18:42               ` Kevin Rigotti
2001-03-06 20:56                 ` Marin David Condic
2001-03-06 22:47                   ` Robert A Duff
2001-03-07 14:43                     ` Marin David Condic
2001-03-07 18:02                       ` Randy Brukardt
2001-03-07 19:52                         ` Marin David Condic
2001-03-07 21:04                           ` Robert A Duff [this message]
2001-03-07 21:45                       ` Robert A Duff
2001-03-07  6:54             ` Jeffrey Carter
2001-03-07 21:39               ` Robert A Duff
2001-03-08  5:53                 ` Jeffrey Carter
2001-03-07 21:47             ` Robert A Duff
replies disabled

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