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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8603e726bcf960f5 X-Google-Attributes: gid103376,public From: Graham Hughes Subject: Re: Ada OO Date: 1996/11/25 Message-ID: <57cq88$d8s@yuggoth.ucsb.edu>#1/1 X-Deja-AN: 200675569 references: <57aq7s$30j@yuggoth.ucsb.edu> organization: University of California, Santa Barbara newsgroups: comp.lang.ada Date: 1996-11-25T00:00:00+00:00 List-Id: -----BEGIN PGP SIGNED MESSAGE----- bobduff@world.std.com (Robert A Duff) writes: >The syntax is similar, but other than that, they are not similar. >CLOS is vastly more powerful, and more complicated, than Ada >(or any other OO language I've ever used). I can definitely agree with that; never seen :around, :before, or :after anywhere else. Even Smalltalk doesn't allow the extreme hair you can see with metaclasses. > Dispatching-on-function-result is something >C++ doesn't have. Also, Ada has class-wide parameters -- a procedure >with class-wide parameters is not dispatching (unless some other >parameter makes it so). This is probably because I learned OO on my own, but what exactly is `dispatching-on-function-result', and class-wide parameters? Does the last refer to the way you specify parameters when instantiating a generic? >Well, sort of. But in CLOS the methods are scattered all over, >whereever the programmer chooses. In Ada, they're collected together in >a single package. Which is quite handy some times, I've noticed. >>Finally, re: the abstract; is it needed in the package body, or can it >>be ommitted? >Umm. Not sure what you mean. Can you give an example? Basically, I was kind of confused whether you needed to mention an abstract method/subprogram in the package body, or whether you could just assume everybody knows what you mean. Fortunately, the latter is true :). - -- Graham Hughes (graham.hughes@resnet.ucsb.edu) alt.PGPlike-key."graham@A-abe.resnet.ucsb.edu".finger.look.examine alt.homelike-page."http://A-abe.resnet.ucsb.edu/~graham/".search.browse.view alt.silliness."http://www.astro.su.se/~robert/aanvvv.html".look.go.laugh -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBMpnr2CqNPSINiVE5AQFnhwP/VMprD5ZNkPNU3Yq4N+mlx/dLBleLvSPd XJ5qxHXC2+TdVu+EU2MDGoC8CjuTp6bjhDjDV+AmSNrZ4qqf56aVug32WQ/B//2V xJX3wvNSaDmovKlDhWasIbu3PII6bx8S6IeykCdwB7O6CQhfqPdtdSIDmAJGnDSR bZTnA98gmG4= =VStO -----END PGP SIGNATURE-----