comp.lang.ada
 help / color / mirror / Atom feed
From: David Emery <demery@cox.net>
Subject: Re: ISO/IEC 14519 - Ada POSIX binding
Date: Fri, 20 Jun 2003 21:49:16 -0400
Date: 2003-06-20T21:49:16-04:00	[thread overview]
Message-ID: <wQOIa.4781$ZE.2242@lakeread05> (raw)
In-Reply-To: <sxydnZ6o9r-I7m6jXTWJhg@gbronline.com>

Wesley Groleau wrote:
...
> The POSIX binding I looked at had a single exception,
> POSIX_Error and then you were supposed to examine the
> errno variable.  Proctalgia, but it's the price you pay
> for interfacing to such a primitive system.  Rather than
> "roll-your-own" completely, I'd say use POSIX as a thin
> binding and provide a thick binding to wrap it in.

If you read the rationale (one of the best parts of the document,
IMHO), you'll see that the primary consideration for this decision
is the fact that the set of errors for any given POSIX system call
is NOT fixed.  POSIX defines a minimum set of error conditions,
implementations may add additional errors (and most have, particularly
as network-based computing has expanded.) Any error handling technique
must accomodate extension.  In general, extension considerations drove
much of the POSIX/Ada design, and with almost 15 years of hindsight,
I think we got the balance between rigid specification and support for
vendor and subsequent standard extensions just about right.

And, as someone else pointed out earlier, the original POSIX/Ada
binding work was done in Ada83.  The standard came out about the same
time as Ada95, and there was a lot of cross-fertilization, so that
we looked at Ada95-like solutions that could be expressed in Ada83.

One specific influence FROM the POSIX/Ada effort was the notion of
Library-level renames, so that we could construct the whole POSIX/Ada95
namespace from library-level renames of the POSIX/Ada83 packages.

			dave (tech editor, original IEEE 1003.5)




  parent reply	other threads:[~2003-06-21  1:49 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-19 21:43 ISO/IEC 14519 - Ada POSIX binding Mark Lorenzen
2003-06-19 21:29 ` tmoran
2003-06-28 23:48   ` Richard Riehle
2003-06-20 11:57 ` Marin David Condic
2003-06-20 14:08   ` Ludovic Brenta
2003-06-20 16:39     ` Warren W. Gay VE3WWG
2003-06-20 18:33       ` tmoran
2003-06-20 19:09         ` Warren W. Gay VE3WWG
2003-06-21 19:14         ` Florian Weimer
2003-06-21 19:42           ` tmoran
2003-06-21 21:04             ` Robert I. Eachus
2003-06-29 15:05             ` Florian Weimer
2003-06-20 19:24       ` Georg Bauhaus
2003-06-20 20:49         ` Warren W. Gay VE3WWG
2003-06-20 20:49       ` Wesley Groleau
2003-06-20 23:05         ` Mark Lorenzen
2003-06-21  1:49         ` David Emery [this message]
2003-06-21 19:19           ` Florian Weimer
2003-06-21 21:47             ` David Emery
2003-06-21 22:22               ` Larry Kilgallen
2003-06-23 16:13               ` Warren W. Gay VE3WWG
2003-06-23 22:41                 ` Berend de Boer
2003-06-24  9:52                   ` Lutz Donnerhacke
2003-06-24 20:43                     ` Berend de Boer
2003-06-25  9:02                       ` Pascal Obry
2003-06-25  9:46                       ` Lutz Donnerhacke
2003-06-25 21:19                         ` Berend de Boer
2003-06-21 13:01       ` Pascal Obry
2003-06-21 12:11     ` Marin David Condic
2003-06-21 12:44       ` Ludovic Brenta
2003-06-21 13:03         ` Larry Kilgallen
2003-06-21 22:28           ` Ludovic Brenta
2003-06-22  3:45             ` Larry Kilgallen
2003-06-22  8:47               ` Mark Lorenzen
2003-06-23 16:36         ` Warren W. Gay VE3WWG
2003-06-24 11:46           ` Marin David Condic
2003-06-21 19:09 ` Florian Weimer
2003-06-21 22:38   ` Mark Lorenzen
2003-06-21 22:51     ` Ludovic Brenta
2003-06-23 16:54       ` Warren W. Gay VE3WWG
2003-06-24 11:49         ` Marin David Condic
2003-06-24 13:31           ` Warren W. Gay VE3WWG
2003-06-23 16:46     ` Warren W. Gay VE3WWG
2003-06-23 22:43       ` Berend de Boer
2003-06-29 15:10     ` Florian Weimer
2003-06-29 20:58       ` David Emery
replies disabled

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