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 12:23:12 +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:48659 Date: 2017-10-30T12:23:12+01:00 List-Id: On 2017-10-30 11:41, Victor Porton wrote: > I do not understand your logic in Generic_Directed_Graph: > > The procedures like > > procedure Disconnect (Parent : Node; Child : Node); > > do not take "Graph" argument. A graph consists of connected nodes. Each node is in and a graph. > Does it mean that there exists just one graph (per instantiation)? No. If two nodes are mutually unreachable you have two graphs. > This looks wrong for me. First it is using global variables. It uses referential semantics. Node is an access type to the type you pass to the package when you instantiate it. E.g. if you want a graph of Strings you instantiate the package with String. Then Node is a pointer to string. The notion of scope does not really applied to the structures like graph. You can scope the pool you pass to the instance. You can scope nodes with some logic attached when a node leaves its scope. But otherwise it makes little sense to talk about the scope of a graph. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de