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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Simple Components (Generic_Directed_Graph) Date: Mon, 30 Oct 2017 16:46:32 +0100 Organization: Aioe.org NNTP Server Message-ID: References: NNTP-Posting-Host: MajGvm9MbNtGBKE7r8NgYA.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 X-Notice: Filtered by postfilter v. 0.8.2 Content-Language: en-US Xref: news.eternal-september.org comp.lang.ada:48667 Date: 2017-10-30T16:46:32+01:00 List-Id: On 2017-10-30 15:58, Victor Porton wrote: > What's about having multiple graphs for the situation if when A and B are of > type T then A=B implies A'Access=B'Access? I don't see how you could create such thing in Ada. > Maybe it's worth to create an alternative graph type (with every graph being > a full-fledged object)? However I do not quite understand your logic, maybe > you are right after all and this is not necessary. In practical applications where graphs might be useful: 1. There is no graph-wide operations or else they are impossibly inefficient. 2. Nodes are normally limited, updated in-place, never copied or moved. 3. Subgraphs are actively used without making copies of the whole graph. 4. Graph structure gets modified (e.g. rotation etc). In short graphs are not containers, the picture you have in mind. Consider graphs in the same league as doubly-linked lists. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de