comp.lang.ada
 help / color / mirror / Atom feed
From: Mark Lorenzen <mark.lorenzen@ofir.dk>
Subject: Re: ISO/IEC 14519 - Ada POSIX binding
Date: 21 Jun 2003 01:05:29 +0200
Date: 2003-06-21T01:05:29+02:00	[thread overview]
Message-ID: <m3k7bgs62u.fsf@niflheim.malonet> (raw)
In-Reply-To: sxydnZ6o9r-I7m6jXTWJhg@gbronline.com

Wesley Groleau <wesgroleau@despammed.com> writes:

> 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.

Yes! The POSIX binding is a (not so)simple binding to a low-level
interface and is therefore also pretty low-level. But it has a huge
advantage, namely that it is POSIX (read PORTABLE) - it is even
implemented for some RT OSes.

I would appreciate a high-level socket or general communication
package, but I think that it is important that the package is based on
the POSIX interface as the interface has a lot of other useful stuff
than just sockets. Imagine that we want to use asynchronous I/O on a
socket - POSIX support that. But async I/O often uses POSIX real-time
signals for event signalling and again it is provided by the POSIX
interface.

When using sockets for real applications, we often need to drag a
whole toolsbox into use f.x. select() or poll(), fcntl(), ioctl() and
so on.

The Ada POSIX Interface is modular, just as the C counterpart, so an
implementation need not implement the whole standard (message queues,
async I/O, co-existence with C threads, RT signals and so on...).

- Mark



  reply	other threads:[~2003-06-20 23:05 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 [this message]
2003-06-21  1:49         ` David Emery
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