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,76ec5d55630beb71 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-06-02 21:09:14 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!canoe.uoregon.edu!arclight.uoregon.edu!wn13feed!wn12feed!wn14feed!worldnet.att.net!204.127.198.204!attbi_feed4!attbi.com!sccrnsc03.POSTED!not-for-mail Message-ID: <3EDC1ED6.5050709@attbi.com> From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Ada 200X References: <3EDAD07A.3010200@attbi.com> <3EDB5DBE.4070807@attbi.com> <3EDBBC18.6080103@attbi.com> <3OSS+0MB47qL@eisner.encompasserve.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 24.62.164.137 X-Complaints-To: abuse@attbi.com X-Trace: sccrnsc03 1054613237 24.62.164.137 (Tue, 03 Jun 2003 04:07:17 GMT) NNTP-Posting-Date: Tue, 03 Jun 2003 04:07:17 GMT Organization: AT&T Broadband Date: Tue, 03 Jun 2003 04:07:17 GMT Xref: archiver1.google.com comp.lang.ada:38431 Date: 2003-06-03T04:07:17+00:00 List-Id: Larry Kilgallen wrote: > Presuming your survey is accurate, what basis is there to think this > would persist if Ada were widely used in a greater variety of domains ? It is not a matter of the nature of domains, but of the nature of Ada. Try it and see. A great test is a library of container classes. At first you thing that you are going to have a four or five deep hierarchy. After working on it a bit you conclude that there are two (or three depending on who is doing it)* top level classes, and all the other classes are children of those. Why is this so different from other OO languages? Me I 'blame' it on information hiding and the Ada culture. If you create a complex structure of derived in Ada, that reveals some implementation details to the user, or prevents the implementor from choosing the best way to implement a feature. Two sides of the same coin. *Hey wait a mimute you say, remembering the original Booch components, you need tasking and non-tasking versions, and this and that, and... Right, but at the base you have various forms of structures with sequential access, and those with keyed/random access. (The potential third category above is bags and other structures without unique keys.) But a tasking safe singly linked list, a non-tasking safe doubly linked list, and a stack are all different implementations of a single interface abstraction. Whether we get interface as a keyword in Ada 0Y or not, the parent is an abstract limited private type, and all the children are slightly different implementations. If you want you can actually have some non-abstract subprograms in the parent, but in practice the ones you can inherit are one liners anyway.