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-Thread: 103376,913ffb3586d7a026 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!goblin2!goblin1!goblin.stu.neva.ru!news.tornevall.net!news.jacob-sparre.dk!pnx.dk!jacob-sparre.dk!ada-dk.org!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: What is the best method for transmitting objects/tagged records? Date: Thu, 9 Jun 2011 15:55:11 -0500 Organization: Jacob Sparre Andersen Research & Innovation Message-ID: References: <47671647-1941-4bf2-ab34-578b4a853095@k16g2000yqm.googlegroups.com> NNTP-Posting-Host: static-69-95-181-76.mad.choiceone.net X-Trace: munin.nbi.dk 1307652917 25139 69.95.181.76 (9 Jun 2011 20:55:17 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Thu, 9 Jun 2011 20:55:17 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6090 X-RFC2646: Format=Flowed; Original Xref: g2news1.google.com comp.lang.ada:19722 Date: 2011-06-09T15:55:11-05:00 List-Id: "Simon Wright" wrote in message news:m2sjrj4mpe.fsf@pushface.org... > "Randy Brukardt" writes: > >> Right, but you don't need to use Ada.Tags (or anything tags) in order >> to stream tagged types. Just use the provided T'Class'Input and >> T'Class'Output attributes. For those to have portable results, you >> need to specify your external tag values for your tagged types (we >> previously discussed that). > > Not sure what you mean by 'portable' here, Randy; are compilers required > to conform to standard representations on the wire? Because GNAT > certainly doesn't out of the box (for example, it uses native byte > order). Good point; the byte order could change. As a matter of course, I would only put things (records) on the wire that already had representation clauses fully specifying their layout (and that includes external tag). In that case, your results will continue to work until/unless you have to change processors (the native byte order surely doesn't change). Ada doesn't out of the box support any sort of hetrogeneous partitioning (the assumption is that all of the processors are similar) and if your implementation provides some it is doing so outside of Ada. (That is, if you have partitions with different native byte orders communicating, you are trying to do something Ada was not designed for.) Randy.