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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,5394d9ca5f955366 X-Google-Attributes: gid103376,public From: Simon Wright Subject: Re: pointers & OOP Date: 1999/05/08 Message-ID: #1/1 X-Deja-AN: 475754581 X-NNTP-Posting-Host: pogner.demon.co.uk:158.152.70.98 References: <$DL10CAsSgL3Iwj3@jr-and-assoc.demon.co.uk> <7gn7gr$fr5$1@nnrp1.dejanews.com> X-Trace: news.demon.co.uk 926231130 nnrp-09:3391 NO-IDENT pogner.demon.co.uk:158.152.70.98 Organization: At Home Newsgroups: comp.lang.ada X-Complaints-To: abuse@demon.net Date: 1999-05-08T00:00:00+00:00 List-Id: John Robinson writes: > Agreed. Similarly for "support" types, i.e. those built merely to > support the declaration and/or use of the main type. In the Booch > component is the arc a support type or an entity in its own right? > The key factor (for me - and I am sure that I will get shouted at for > saying this) is that if a type is associated with behaviour then this > behaviour should be physically implemented in a dedicated, cohesive > package. Well, in the general case I wouldn't quarrel. Just, absolute rules are a Bad Thing, and there should always be a waiver mechanism! In the BC.Graph case, it's clear that Graph, Arc and Vertex are different things that must cooperate intimately to achieve the purpose. I don't propose to second-guess Grady on this design. Just one point -- in this case, of course child packages wouldn't be the logical answer, because the behaviours of the three types are very different.