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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,99f33f51845a7793 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-11-19 16:50:26 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!news1.rdc1.sfba.home.com.POSTED!not-for-mail Message-ID: <3BF9A907.7672A3C3@home.com> From: Mark Biggar X-Mailer: Mozilla 4.78 [en]C-{C-UDP; EBM-SONY1} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: 'withing' problem [code generation] References: <3be27344$0$227$ed9e5944@reading.news.pipex.net> <3BE42900.7590E899@adaworks.com> <3be65f4c$0$237$ed9e5944@reading.news.pipex.net> <3BF6E4DF.FA47ACDB@adaworks.com> <3BF93F0F.D5E4D0B7@Raytheon.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Tue, 20 Nov 2001 00:50:25 GMT NNTP-Posting-Host: 24.250.143.171 X-Complaints-To: abuse@home.net X-Trace: news1.rdc1.sfba.home.com 1006217425 24.250.143.171 (Mon, 19 Nov 2001 16:50:25 PST) NNTP-Posting-Date: Mon, 19 Nov 2001 16:50:25 PST Organization: Excite@Home - The Leader in Broadband http://home.com/faster Xref: archiver1.google.com comp.lang.ada:16704 Date: 2001-11-20T00:50:25+00:00 List-Id: Stephen Leake wrote: > > Mark Johnson writes: > > at least two "simple solutions" that are not mutually exclusive: > > - annotate the drawing to "break the circular dependency here" > > This is not "automatic", it's "manual". That's the point. > > > - recognize patterns of circular dependencies and generate code > > that automatically generates the new packages (and report such > > changes to the user) > > This may be possible. The problem is that the automatic recogition of > patterns may be unstable; small changes in the UML model may make > large changes in the new packages. How about a hybrid approach, Automatically break the cycle and then automatically annotate the diagram so that it does it the same way in the future. Of course, if the user want to do the annotation manually (like if he doesn't like the way the automatic system did it) they he can. Then there is the over specification approach, forward declare all the types in the cycle in a symmetric way. -- Mark Biggar mark.a.biggar@home.com