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,900edaa189af2033 X-Google-Attributes: gid103376,public From: wheeler@aphrodite.csed.ida.org (David Wheeler) Subject: Re: Ada95 OOP Questions Date: 1996/07/29 Message-ID: <4tjaai$1hp@news.ida.org>#1/1 X-Deja-AN: 170892510 references: <4tf3l4$4hu@masala.cc.uh.edu> organization: IDA, Alexandria, Virginia newsgroups: comp.lang.ada Date: 1996-07-29T00:00:00+00:00 List-Id: Andre Spiegel (spiegel@berlin.informatik.uni-stuttgart.de) wrote: : Spasmo writes: : > with Persons; : > : > procedure Main is : > : > P : Persons.Person; : > : > begin : > Persons.Walk(P); : > Persons.Talk(P); : > Persons.Eat(P); : > end Main; : With a use-clause, it looks better : with Persons; use Persons; : P : Person; : Walk (P); : Talk (P); : Eat (P); : > Correct me if I'm wrong on this. So you're still passing parameters : > which means that data and subprograms are still 2 different entities : > which sorta hurts the abstraction, rather than in say C++ where : > you've got a unified object. : You _are_ wrong. The subprograms actually _are_ a part of the object, : and they "go" with it, so to speak of, whereever you take the object. : It is just less obvious from the syntax in Ada. Spiegel's right. Spasmo - you're concentrating on minor syntactic variance. Ada treats all calls with the same syntax; C++'s syntax varies depending on how it's defined. The difference is unimportant. To see an example of OO in Ada95, look at my "Small" program at: "http://lglwww.epfl.ch/Ada/Tutorials/Lovelace/small.htm" You'll see lots of OO concepts, and operations unified with the object. --- David A. Wheeler Net address: dwheeler@ida.org