Newsgroups: comp.object,comp.lang.smalltalk,comp.lang.ada
Path: cantaloupe.srv.cs.cmu.edu!europa.chnt.gtegsc.com!gatech!bloom-beacon.mit.edu!world!bobduff
From: bobduff@world.std.com (Robert A Duff)
Subject: Re: Has C++ had its day?
Message-ID: <DBF98A.I2K@world.std.com>
Organization: The World Public Access UNIX, Brookline, MA
References: <dewar.804646227@hgc.edu> <3t9tdq$kef@gensym1.gensym.com> <1995Jul5.133218.9910@merlin.hgc.edu> <3tmv97$pm9@gensym1.gensym.com>
Date: Sat, 8 Jul 1995 23:57:46 GMT
Lines: 18
Xref: glinda.oz.cs.cmu.edu comp.object:34709 comp.lang.smalltalk:25651 comp.lang.ada:32312

In article <3tmv97$pm9@gensym1.gensym.com>,  <jsa@gensym.com> wrote:
>type My_X is ...
>package Ring_X is new Ring(My_X);
>package Ordered_Ring_X is new Linear_Ordering(Ring_X.R);
>subtype My_Type is Orderd_Ring_X.Ordered;

Minor point: You might want to say:

type My_Type is new Orderd_Ring_X.Ordered;

because then you get all the operations of the type, without having to
prefix them with "Ordered_Ring_X.".  Especially if some of them are
operator symbols.  Note that a use_clause doesn't do it, because every
client of the package containing the above code would have to write the
use_clause.  Clients shouldn't have to reach into the Ordered_Ring_X
instance.

- Bob
