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,38fc011071df5a27 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-05-29 08:45:23 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!uio.no!193.75.75.20.MISMATCH!news.eunet.no!news.powertech.no!newsfeed1.e.nsc.no!nsc.no!nextra.com!news2.e.nsc.no.POSTED!53ab2750!not-for-mail From: "Tarjei T. Jensen" Newsgroups: comp.lang.ada References: <6a90b886.0305262344.1d558079@posting.google.com> <3ED4A94C.2020501@noplace.com> <3ed4c9a2@news.wineasy.se> <3ED4EB4E.6050108@cogeco.ca> Subject: Re: Ideas for Ada 200X (Ada.Sockets) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 Message-ID: NNTP-Posting-Host: 130.67.226.18 X-Complaints-To: news-abuse@telenor.net NNTP-Posting-Date: Thu, 29 May 2003 17:45:22 MEST X-Trace: news2.ulv.nextra.no 1054223122 130.67.226.18 Date: Thu, 29 May 2003 17:45:03 +0200 Xref: archiver1.google.com comp.lang.ada:37998 Date: 2003-05-29T17:45:03+02:00 List-Id: Robert A Duff wrote: > It seems better to say "here's the standard way to do it, but it's > optional". That's what the SN Annexes are for. Then implementers > can choose whether to implement it based on the needs of their > customers. After all, the purpose of standards is to encourage > uniformity -- not to encourage implementers to provide functionality > to their customers (the market is supposed to do the latter). That is what is needed. > Another alternative is just to have a de-facto standard for sockets. > > I use the GNAT sockets packages, even when I'm using non-GNAT compilers, > and that seems to work OK for me. If everybody used that, it would be perfectly OK. The point is that there must be a reasonably sensible and agreed standard. One could also add a layer to the socket library in order to simplify socket programming for ordinary mortals. e.g. add a tcp client and server library. This is not supposed to be something fancy; just something that hides the ugly stuff and works reasonably well and with no surprises. How simple should such a library be? Just four procedures: open_tcp_client, open_tcp_server, read_tcp, write_tcp. That's it. The latter should ideally be just aliases for more general read and write procedures/functions. Regardless: There is an urgent need to decide what should be easy to do in Ada in a general computing environment. Som suggestions for improvement: - strings. Let's get at least one type of strings that works like strings are supposed to do. - standardized file I/O library (at least a superset of text_io). This is the stuff that breaks programming languages. - a *simple* console I/O package (text terminal). These days one can assume at least a vt100. Preferably something that works seamlessly with both 7 and 8 bit escape sequences. - standardized socket library. Ideally two layers; raw - C-like and a simple binding. In addition one could create soft standards which includes freely available software. e.g. AWS, GNADE The softness might just be that the package is documented and examples provided. greetings, greetings,