From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2d2df3e9ad18fa63 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-06-23 09:51:37 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!cyclone.bc.net!news.uunet.ca!nf3.bellglobal.com!nf1.bellglobal.com!nf2.bellglobal.com!news20.bellglobal.com.POSTED!not-for-mail Message-ID: <3EF72C8C.8080103@cogeco.ca> From: "Warren W. Gay VE3WWG" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: ISO/IEC 14519 - Ada POSIX binding References: <3EF2F6B8.3030706@noplace.com> <3EF44B79.2000407@noplace.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Date: Mon, 23 Jun 2003 12:36:28 -0400 NNTP-Posting-Host: 198.96.223.163 X-Complaints-To: abuse@sympatico.ca X-Trace: news20.bellglobal.com 1056386189 198.96.223.163 (Mon, 23 Jun 2003 12:36:29 EDT) NNTP-Posting-Date: Mon, 23 Jun 2003 12:36:29 EDT Organization: Bell Sympatico Xref: archiver1.google.com comp.lang.ada:39611 Date: 2003-06-23T12:36:28-04:00 List-Id: Ludovic Brenta wrote: > Marin David Condic writes: >>Ludovic Brenta wrote: >>>POSIX has been around for a long time now, and yes, people do rely >>>on it. The revision process is long and thorough, much like the >>>Ada standard's. ... >>>POSIX stands for Portable Operating System Interface for uniX. It ... >>It is an "abstract interface" for a UNIX-like implementation. There >>are OS's besides UNIX and possibly in the next ten years or so that >>an Ada standard would have to live, there may be a bunch more >>non-UNIX operating systems out there. I have no objection to POSIX >>or UNIX - just suggesting that an Ada standard would do well to not >>dictate either POSIX or UNIX as the only possible answer. > > Maybe you have a point here ("all problems can be solved with an > additional level of indirection", I think was the quote). It probably > depends on how difficult it would be to implement POSIX.5 sockets on > non-POSIX platforms. Furthermore, I would think that anyone designing > a new OS in the next ten years would want to make it POSIX-compliant, > because it would be too difficult to try an impose an alternative API. That might be good advice, but that has nothing to do with the present discussion. Embedded systems are not likely to care to support any concept of POSIX. Also, who knows: maybe there will be a resurgence of interest in O/S design, and something radically new and improved will emerge. Why force what can be O/S neutral to tie itself unnecessarily to one O/S standard? In fact, I will even go out on a limb here and state that any Ada.Sockets standard can be completely new in an API sense. It only has to address the same networking _needs_. The purpose of the Ada.Sockets package is not for porting C programs to Ada. New Ada programs can completely disregard prior [API] art, in terms of how the same functions are achieved. In fact, there is a strong probability that this will be the case, in order to preserve the Ada strengths, like Ada streams. All that is required is that the new standard carefully be designed to be _portable_ to platforms that it is likely to be used upon. The rest is mere vendor implementation detail. > In fact, you've probably noticed that even the MVS and z/OS mainframe > operating systems became POSIX-compliant for just that reason. > > So, if anyone on this newsgroup wants to implement a sockets package > in Ada, I'd suggest they make sure the external API is POSIX.5, > whatever their underlying platform is. I don't agree, and my reasons are similar to Marin's. Certainly there is no reason not to use POSIX underneath the hood, where it makes sense. But I see no need to tie an Ada standard to a POSIX standard. Nor do I see a need to make an Ada interface match a C-ish UNIX one (for the record, I am a UNIX fan, saying this). >>>P.S. There is already an implementation of the POSIX standard >>>available at no cost under the GPL. It is called FLORIST and is ... > Currently, I am aware of only one platform that remains non-POSIX, and > that is Windows. Yet I don't think it would be impossible to write a > POSIX.5 thick binding on top of it (I mean for sockets, not the entire > OS). Given that you will always have O/S's with varieties of O/S APIs, I see no reason to bind an Ada sockets library on one O/S interface standard. The goal should be similar to the ones that I presume were used for Ada.Text_IO : arrive at a portable API that can serve the majority of needs, for the majority of platforms (I am sure there are embedded sitatuations where even Text_IO is not implemented). You'll never standardize an "all singing/dancing" package, but to come close while remaining portable are the goals here. What you seem to imply is that the POSIX API should be the primary goal instead. This is where I disagree. -- Warren W. Gay VE3WWG http://home.cogeco.ca/~ve3wwg