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-28 14:20:21 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news.uchicago.edu!newsswitch.lcs.mit.edu!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Ideas for Ada 200X (Ada.Sockets) Date: 28 May 2003 17:20:19 -0400 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <6a90b886.0305262344.1d558079@posting.google.com> <3ED4A94C.2020501@noplace.com> <3ed4c9a2@news.wineasy.se> <3ED4EB4E.6050108@cogeco.ca> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls4.std.com 1054156819 21180 199.172.62.241 (28 May 2003 21:20:19 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Wed, 28 May 2003 21:20:19 +0000 (UTC) User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: archiver1.google.com comp.lang.ada:37946 Date: 2003-05-28T17:20:19-04:00 List-Id: "chris.danx" writes: > Larry Kilgallen wrote: > > > Standard, as in required of all compilers ? > > That would be totally bogus in some embedded environments. > > Can't you say "the provision of sockets is compulsory, except for > environments where such provision makes no sense"? i.e. it's not > optional for compilers on networked systems, but not mandatory on > embedded targets? 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). To say "compulsory except where it doesn't make sense" gets standards bodies embroiled in judging what "makes sense" in various environments, and that's not what they are good at. Of course, there's some of that anyway -- *every* feature in the standard is optional if it's impossible or impractical to implement in a given environment, and validation authorities sometimes need to make judgement calls. For example, one of our (SofCheck's) embedded Ada targets does not support file I/O, because our customers don't want it -- their chips are not attached to disk drives. That did not prevent validation. 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. - Bob