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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no 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!.POSTED!not-for-mail From: "G.B." Newsgroups: comp.lang.ada Subject: Ada wikibook help needed (O-O) Date: Sun, 23 Apr 2017 12:22:20 +0200 Organization: A noiseless patient Spider Message-ID: Reply-To: nonlegitur@notmyhomepage.de Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sun, 23 Apr 2017 10:19:11 -0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="ed50f2cc1bf84b3669de21a134d2456e"; logging-data="10226"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/11XAAEfqdUmHhAjMU+LVw7xMIJMo8NWs=" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 X-Mozilla-News-Host: news://news.arcor.de:119 Cancel-Lock: sha1:nmoc5wLQwIRYO59uHpZTutZ/wL8= Xref: news.eternal-september.org comp.lang.ada:46611 Date: 2017-04-23T12:22:20+02:00 List-Id: Hi all, for a number of years, the Wikibook subsection on O-O in Ada seems to have suffered from lack of clarity, according to a number of comments still present, a few written a number of years ago. Some here may say that this state of presentation is caused by Ada using type extension and so forth in the first place. But still, if the book does place Ada in contrast with C++, say, or explains Ada O-O, then it should be possible to precisely use Ada vocabulary to make readers profit by adding unmistakable carity. https://en.wikibooks.org/wiki/Ada_Programming/Object_Orientation If you have a moment, could you kindly substantiate whether or not, e.g., the following are absolutely and demonstrably correct and well put? The page goes to some length to explain static dispatching vs. dynamic dispatching, but fails to introduce "dispatching" first, as a term, or to reference some suitable definition. Then, "A conversion to the class-wide type makes [components] visible again." Is "visible" correct? Is it correct to say “static call” at all, other than when waving hands, (not helpfully IMHO) in "within Op1, the first call to Op2 is therefore also a static call " where procedure Op1 (This: Root) is begin ... Op2 (This); -- not redispatching ... end Op1; The idea being that “static call” is not really defined in Ada AFAICT, other than to mean a call of a static function in a static expression. So, not the same thing as discussing O-O, or static binding, or dynamic dispatch. "In other OO languages, a method is either dispatching or not. In Ada, a routine is either _available_ for dispatching or not. " The wording of LRM N(28) seems to not be in line with the second of these statements. ...