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.8 required=5.0 tests=BAYES_00,INVALID_MSGID, SUBJ_ALL_CAPS autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,4873305131bf4d94 X-Google-Attributes: gid103376,public X-Google-Thread: fdb77,4873305131bf4d94 X-Google-Attributes: gidfdb77,public X-Google-Thread: 109fba,4873305131bf4d94 X-Google-Attributes: gid109fba,public X-Google-Thread: 1014db,4873305131bf4d94 X-Google-Attributes: gid1014db,public From: ckann@seas.gwu.edu (Charles W. Kann) Subject: Re: ADA SUCKS, C/C++/JAVA RULES!!!! Date: 1997/11/11 Message-ID: <64albp$lhi17@beaker.nit.gwu.edu>#1/1 X-Deja-AN: 288709210 References: <34557f2b.1934172@news.mindspring.com> <36984222@NEWS.SAIC.COM> <345A83CA.CD776C91@flash.net> <63fl3r$d5c$1@news.luth.se> <345B7A48.F32E4924@flash.net> <63usl7$hqo$7@route1.mdrf.france3.fr> <647jig$igl17@beaker.nit.gwu.edu> Followup-To: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.lang.java.advocacy Organization: George Washington University Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.lang.java.advocacy Date: 1997-11-11T00:00:00+00:00 List-Id: : :> I have never been able to figure out a way to write general purpose : :> programs which use an interface like construct. : : : :Such as? By far the most common use of MI is as a kludge to implement : :mixin behavior. You get this cleanly and simply in Ada95 with SI and : :generic mixins. When I posted this, I was talking about "interface". Look it up in Java. It isn't "mixins". It is clean, dynamic, straight forward, and very easy to understand. "interface" was one of the best ideas in Java. Everytime I mention this to an Ada person, they always try to make it like "you can do everything in Ada, so this has to be there". The most common thing Ada people tell me is to look at Generics. I know Generics, and it has nothing to do with the concept of an "interface". It is: 1 - static, and 2 - backwards. If there is an easy way to create the equivalent of an "interface" in Ada, I would love to see it. It can be done (if you are careful) in C++, or any language with Virtual functions, Abstract classes, AND multiple inheritence. I am not putting down Ada, but it isn't the answer to every problem, and regardless of what some Ada advocates might say, Ada 95 made (alot) of bad design decisions. Protected types (the implementation, the idea was great), object allocation, inheritence are just a few bad decisions. -- chuck kann ckann@seas.gwu.edu