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,LOTS_OF_MONEY autolearn=unavailable autolearn_force=no version=3.4.4 Path: border2.nntp.dca1.giganews.com!nntp.giganews.com!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!feeder.erje.net!eu.feeder.erje.net!gandalf.srv.welterde.de!news.jacob-sparre.dk!loke.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: GNAT GPL is not shareware Date: Mon, 12 Jan 2015 17:37:26 -0600 Organization: Jacob Sparre Andersen Research & Innovation Message-ID: References: <87bnmetex4.fsf@ludovic-brenta.org> <79f3eff7-2b45-40ae-af94-fa9a17426d82@googlegroups.com> <87bnmd8mg2.fsf@ixod.org> <19cf9bc2-f8b9-4735-b427-7b070dda59da@googlegroups.com> <1otenmcbgnvlt$.dn9361nl2jm8$.dlg@40tude.net> NNTP-Posting-Host: rrsoftware.com X-Trace: loke.gir.dk 1421105847 22932 24.196.82.226 (12 Jan 2015 23:37:27 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Mon, 12 Jan 2015 23:37:27 +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.6157 X-RFC2646: Format=Flowed; Response Xref: number.nntp.giganews.com comp.lang.ada:191860 Date: 2015-01-12T17:37:26-06:00 List-Id: "Shark8" wrote in message news:hCZrw.1170551$412.561840@fx30.iad... > On 09-Jan-15 15:07, Randy Brukardt wrote: >> Of course it's possible -- it's just unnatural. The reason Ada now has a >> tree container is directly because of that -- while you can map a tree >> into >> a flat structure, you have to do some sort of encoding to do so. It's >> better >> to directly have the structure. > > I agree. > But there's no reason to snub what's essentially the > seralization/deserialization for storage. (That is, at some point it's > going to be stored [and retrieved] sequentially, in some manner.) Depends on the usage, of course. If all you need is persistence of the (entire) data structure, the stream attributes provided with Multiway_Trees is sufficient (and it already exists, so no wheel-reinventing, and a lot less complex than a DB). If you need some sort of on-the-fly access to individual elements, that's obviously a different problem (and much more in the wheelhouse of DBs, as it is necessarily transactional). Randy. Randy.