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!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.swapon.de!newsfeed.fsmpi.rwth-aachen.de!reality.xs3.de!news.jacob-sparre.dk!loke.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Problem with limited with Date: Fri, 26 Jul 2013 22:55:02 -0500 Organization: Jacob Sparre Andersen Research & Innovation Message-ID: References: NNTP-Posting-Host: static-69-95-181-76.mad.choiceone.net X-Trace: loke.gir.dk 1374897303 17840 69.95.181.76 (27 Jul 2013 03:55:03 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Sat, 27 Jul 2013 03:55:03 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Xref: news.eternal-september.org comp.lang.ada:16546 Date: 2013-07-26T22:55:02-05:00 List-Id: "Jeffrey Carter" wrote in message news:ksv36l$tnc$1@dont-email.me... > On 07/26/2013 03:17 PM, Adam Beneschan wrote: >> >> C'mon, people. It should be possible to ask a question about the >> language >> rules by posting a reduced case, without getting comments about why the >> poster didn't write his code a different way, or why the identifiers >> aren't >> descriptive, or why a complete working example wasn't posted or >> something. > > It should be possible to post a reduced example that actually uses the > feature > that causes the problem. > > But even in that case, I'd still say the best solution is to avoid limited > with. > Recursive types belong in the same pkg together. Limited with is a kludge > to let people write JavAda and should never have been added in the 1st > place. I don't buy this. In a large system, it's very common to have types which are mutually related. If one is forced to put all such types into a single package specification, a large part of the entire system ends up in one giant package. And that eliminates a lot of Ada's advantages about reduced coupling and the ability to have multiple people working on a system without tripping over each other. The Claw Builder ran into this problem in spades. The effort to avoid recursion was so severe that we essentially stopped working on it waiting for the ARG to decide how to handle the problem. The need to have types associated with both the generated code structure and with the structure of the application (and these are only slightly related) absolutely requires some sort of recursion system. (And I don't know that much about Java -- I've never used it.) Randy.