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,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,e276c1ed16429c03 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,UTF8 Path: g2news2.google.com!news4.google.com!feeder2.cambriumusenet.nl!feed.tweaknews.nl!138.195.8.3.MISMATCH!news.ecp.fr!aioe.org!not-for-mail From: =?utf-8?Q?Yannick_Duch=C3=AAne_=28Hibou57?= =?utf-8?Q?=29?= Newsgroups: comp.lang.ada Subject: Re: Ada is getting more popular! Date: Sat, 30 Oct 2010 02:30:05 +0200 Organization: Ada @ Home Message-ID: References: <5086cc5e-cd51-4222-a977-06bdb4fb3430@u10g2000yqk.googlegroups.com> <14fkqzngmbae6.zhgzct559yc.dlg@40tude.net> <8732ea65-1c69-4160-9792-698c5a2e8615@g13g2000yqj.googlegroups.com> <4cc60705$0$23764$14726298@news.sunsite.dk> <4cc6753c$0$23756$14726298@news.sunsite.dk> <4cc71e08$0$23758$14726298@news.sunsite.dk> <4cc87d7a$0$23755$14726298@news.sunsite.dk> <4cc912e1$0$23761$14726298@news.sunsite.dk> NNTP-Posting-Host: +ZcidqkMrHe8tAUIMyA1Yg.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.63 (Win32) Xref: g2news2.google.com comp.lang.ada:15920 Date: 2010-10-30T02:30:05+02:00 List-Id: Le Sat, 30 Oct 2010 02:01:46 +0200, Vinzent Hoefler = a =C3=A9crit: > The problems start with the dynamic properties, where the operations o= n = > the > types can not be resolved statically anymore, because these are very h= ard > to prove for correctness. They may even call subroutines which are = > completely > out of the scope of the unit you're calling it from. > > And if you don't want (or are not allowed, because the Software = > Programmer's > Manual says so) to use class-wide programming, then there's usually no= = > point > in using inheritance at all. ;) To be more precise or exact, you may have missed to point the area these= = comments applies to. I guess this is right for some requirements (you = talked about a manual, seems to contains restrictive requirements). Say = = it's universal is less obvious. As an example of your objections, you said =E2=80=9CThey may even call s= ubroutines = which are completely out of the scope of the unit you're calling it from= =E2=80=9D = : sometime this what is expected to be possible, most commonly with = scripted application (which can extended with script). Better say this c= an = occurs while it was not expected. Said this way, I would agree. In areas, like UIs, if you avoid inheritance (and dynamic dispatching) y= ou = ends up with thousands of different types (the same applies with languag= es = oriented applications, graphics oriented, and others). Ancestor-types = helps to handle this proliferation of types. This is not always = predictable when operations comes into the place, I agree, and weither o= r = not it is, depends on the design, and is not at all enforced by the = paradigm, agree too. May be inheritance is dedicated to large complex set of types and = composition where it needs to be predictable. I've understood you complained, not about inheritance and rather about = dynamic dispatching. But when inheritance come, dynamic dispatching is = near to be there, just because if there is inheritance, you have to say = = what the operations associated to these types will become as inheritance= = goes (you can also make them all frozen, or never use class wide types, = = true). I am not asserting anything, these are just some thoughts (did not = finished to read the lectures suggested by Jean-Pierre, as I get into = troubles with a modeling application in the while, sigh). As another question to feed the talk : will you see a way to handle larg= e = set of types with composition ? Does composition provides another way to= = group by similarities and handle these groups as a whole ? Now back to J-P's lectures. -- = Si les chats miaulent et font autant de vocalises bizarres, c=E2=80=99es= t pas pour = les chiens.