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=-0.4 required=5.0 tests=AC_FROM_MANY_DOTS,BAYES_00 autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,ac2397ce800de518 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-09-04 09:15:08 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!colt.net!news-x2.support.nl!news-x.support.nl!psinet-eu-nl!psiuk-p4!uknet!psiuk-n!news.pace.co.uk!nh.pace.co.uk!not-for-mail From: "Marin David Condic" Newsgroups: comp.lang.ada Subject: Re: adasockets and adatypes Date: Tue, 4 Sep 2001 11:58:08 -0400 Organization: Posted on a server owned by Pace Micro Technology plc Message-ID: <9n2tmi$g4j$1@nh.pace.co.uk> References: <20010904115244.24236db3.tonygair@blueyonder.co.uk> <1v6l7.3307$4z.6132@www.newsranger.com> NNTP-Posting-Host: dhcp-200-133.miami.pace.co.uk X-Trace: nh.pace.co.uk 999619090 16531 136.170.200.133 (4 Sep 2001 15:58:10 GMT) X-Complaints-To: newsmaster@news.cam.pace.co.uk NNTP-Posting-Date: 4 Sep 2001 15:58:10 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Xref: archiver1.google.com comp.lang.ada:12704 Date: 2001-09-04T15:58:10+00:00 List-Id: Also, just because you can get there by rolling-your-own operations, in my mind isn't the same as saying 'Input and 'Output produce "portable" results. If I've got to go to the extreme of first thoroughly defining the representation of all the data types involved and second defining 'Input and 'Output for everything involved, then I might just as well have done a little bit-twiddling with Unchecked_Conversion, etc., and produced my own message catalog. You already have the rep clauses you need (maybe even fewer of them!) and one Unchecked_Conversion or overlay later and you're there. And I still think you've got issues that don't let you absolutely guarantee representation - at least not if the requirement is that you must be able to interface to any arbitrary reader/writer at the other end of the stream. You certainly have little to no control over the language defined types and, IIRC, there were issues if you needed to span boundaries or otherwise deal with a stream that might be produced anywhere by anything. If you have a sufficiently bounded problem, you can probably get there - albeit with more effort than I'd like to expend. For some specific set of messages and some specific set of machines/compilers, you can come up with a consistent production/consumption of the data. But I think you have a hard time dealing with the more general cases. MDC -- Marin David Condic Senior Software Engineer Pace Micro Technology Americas www.pacemicro.com Enabling the digital revolution e-Mail: marin.condic@pacemicro.com Web: http://www.mcondic.com/ "Ted Dennison" wrote in message news:1v6l7.3307$4z.6132@www.newsranger.com... > In article , David C. Hoos > says... > >This is simply not so. If the record component types have user-defined > >endianness-independent stream attributes, then the data will have the > > How does one do this for language-defined types? Every Ada compiler I've tried > it on (including gnat 3.13p just now) only allows one to redefine the IO > attributes in the same declaration section in which the type is declared. > > If you only have 2 implementations to get talking, it is fairly easy to massage > one end until it talks like the other. That isn't the same thing as true > portability. >