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=BAYES_00,FORGED_MUA_MOZILLA autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,9983e856ed268154 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.224.71 with SMTP id ra7mr3350166pbc.3.1345654103618; Wed, 22 Aug 2012 09:48:23 -0700 (PDT) Received: by 10.180.88.195 with SMTP id bi3mr505635wib.3.1345654103234; Wed, 22 Aug 2012 09:48:23 -0700 (PDT) Path: a5ni2808pbv.0!nntp.google.com!news2.google.com!yt1no39381583wib.1!news-out.google.com!q11ni261557919wiw.1!nntp.google.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!193.141.40.65.MISMATCH!npeer.de.kpn-eurorings.net!npeer-ng0.de.kpn-eurorings.net!newsfeed.arcor.de!newsspool1.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Wed, 22 Aug 2012 18:48:03 +0200 From: Georg Bauhaus User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Should Inline be private in the private part of a package spec? References: <501bd285$0$6564$9b4e6d93@newsspool4.arcor-online.net> <502d3c68$0$6572$9b4e6d93@newsspool3.arcor-online.net> <502e9039$0$6557$9b4e6d93@newsspool4.arcor-online.net> <40tmogy4d1b5.1kc2gm8qfrkdu.dlg@40tude.net> <503240ed$0$6569$9b4e6d93@newsspool3.arcor-online.net> <50326457$0$6576$9b4e6d93@newsspool3.arcor-online.net> <1qril0ny3eczr$.1vlhpbrjyyb8k.dlg@40tude.net> <503375ac$0$6565$9b4e6d93@newsspool3.arcor-online.net> <1vglgit7vnu4l$.2ytljabrhk2.dlg@40tude.net> <5033986c$0$6573$9b4e6d93@newsspool3.arcor-online.net> <62h5nifarvom.1myeqdyevhefq.dlg@40tude.net> <5033b4d8$0$6571$9b4e6d93@newsspool3.arcor-online.net> <5033ff28$0$6185$ba4acef3@reader.news.orange.fr> <5034dac1$0$6579$9b4e6d93@newsspool3.arcor-online.net> In-Reply-To: Message-ID: <50350d35$0$6579$9b4e6d93@newsspool3.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 22 Aug 2012 18:47:49 CEST NNTP-Posting-Host: 8a8f3d8a.newsspool3.arcor-online.net X-Trace: DXC=F:P<@8F95aCA@P]\DMcF=Q^Z^V3H4Fo<]lROoRA8kFjeYMIEOnc\616M64>JLh>_cHTX3jMe>DmjVXiSbG X-Complaints-To: usenet-abuse@arcor.de Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Date: 2012-08-22T18:47:49+02:00 List-Id: On 22.08.12 16:30, Dmitry A. Kazakov wrote: >> As always, the question is inefficient for what and for whom. > > For the network and the peers. The measures for both can be easily > provided. Well, that would depend on the specifics of "network" and its mode of use, wouldn't it? >>> 2. fails to capture the structure (e.g. recursive, interlinked structures) >> >> ? > > Take Containers.Doubly_Linked_Lists as an example. The closure object of a > list is the structure in question. "closure object" = ? >>> 3. lacks even basic data types (everything is string, not even weakly >>> typed) >> >> ? > > Compare XML to Ada or C. The latter languages have elementary data types > which can be used in algebraic operations constructing new types. Many type definitions will be possible using the respective part of XML technology (XSD, or Relax NG with suitable choices). If one wishes to use them. This does not yield Ada data types, but it does yield data with loads of information about the types, including Ada style range constraints. Reuse of types in other types is possible. But I would not want all those types, because my interpretation of data might be justifiably different. >>> 6. requires complex, resource consuming, vulnerable infrastructure like >>> parsers >> >> Yes, there are cases where such parsers are needed, and even more >> of such things. For example, if you run Google. > > Remember that the case in question is "exchanging structured data," not > running Google. Google is the biggest thing on earth that exchanges data with just about everything outside microwave ovens. >>> 7. is not redundant and at the same time absolutely permissive (requires >>> complex validation of itself) >> >> Another set of unqualified word ({"redundant", ... }) > > http://en.wikipedia.org/wiki/Redundancy_%28engineering%29 (That's still unqualified, but as you say, redundancy may refer to layers. But there is more.) The purpose of "syntactic excess" of XML is about the same as in Ada: put a left bracket at the start of a thing, and put a right bracket at the end of a thing, possibly named: title: begin ... end title; package Foo is ... end Foo; ...
...
Unlike HTML, and like Ada, XML allows for some redundancy by making sure that for each left bracket there is a right bracket in the text. Most right brackets in XML tend to be named brackets, just like in Ada. Both are unlike Ada's streamed data. >> You don't have to write parser infrastructure when you >> can use XML. > > 1. I don't need parser if I don't use XML. I need to write many parsers if I can't use XML. I use data not generated by our programs. > 2. I need to write the application layer serializing and deserializing > object in any case. OK. > 3. Serialization is much simpler without XML. See Ada.Streams. Is Ada's serialization easier for you, the 1 writer, or easier for the N unknown readers out there who might not be using Ada? > Safety could be against > > 1. intentional misuse I don't see how any source of data could protect against misuse of data once data have left the "building". > 2. unintentional errors ? [rant about more than one standards-conforming implementation of XML tools.]