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_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,bf2f30a0886f0d6c X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1993-03-26 21:00:02 PST Path: sparky!uunet!pipex!marble.uknet.ac.uk!uknet!mucs!m1!bevan From: bevan@cs.man.ac.uk (Stephen J Bevan) Newsgroups: comp.lang.ada Subject: Re: Classes vs Tagged Types - Terminology Message-ID: Date: 26 Mar 93 11:02:00 GMT References: <17255@goanna.cs.rmit.oz.au> <1993Mar25.155650.16244@inmet.camb.inmet.com> Sender: news@cs.man.ac.uk Organization: Department of Computer Science, University of Manchester In-reply-to: stt@spock.camb.inmet.com's message of 25 Mar 93 15:56:50 GMT Date: 1993-03-26T11:02:00+00:00 List-Id: In article <1993Mar25.155650.16244@inmet.camb.inmet.com> stt@spock.camb.inmet.com (Tucker Taft) writes: [ much that I agree with except for the following ] More important than inheritance (even with type extension), in my view, is the ability to have multiple implementations of a given abstraction. This is what separates an "object-oriented" language (like Ada 9X or C++) from an "abstraction-oriented" language (like Ada 83 or CLU). In an "abstraction-oriented" language, each abstraction interface has exactly one implementation, and hence all calls on operations of the interface can be statically bound. One of my favourite languages, ML, allows multiple implementations of a single interface via parameterisation and to some extent so does Ada83 via generics. Can this be reconciled with the above statement? bevan