comp.lang.ada
 help / color / mirror / Atom feed
From: "Norman H. Cohen" <ncohen@watson.ibm.com>
Subject: Re: OO, C++, and something much better!
Date: 1997/01/27
Date: 1997-01-27T00:00:00+00:00	[thread overview]
Message-ID: <32ED2930.3B92@watson.ibm.com> (raw)
In-Reply-To: c0.9w.2DpS6R$08e@craftedsmalltalk.com


traymond@craftedsmalltalk.com wrote:
> 
> In <32E788D4.4B91@watson.ibm.com>, "Norman H. Cohen" <ncohen@watson.ibm.com> writes:
> [stuff deleted]
> :For example, suppose a program has an array of "producer companies" that
> :manufacture a particular product and an array of "consumer companies"
> :that buy that product.  Suppose the program manipulates both integers
> :meant to index into the first array and integers meant to index into the
> :second array.  Mistakenly using a variable holding an integer of the
> :first kind to index into the second array could produce subtle errors
> :that might be hard to track down, or might just silently produce
> :incorrect answers.  In a strongly typed language such as Ada, one could
> :write
> :
> :   type Producer_Number is range 1 .. Max_Producer_Count;
> :   type Consumer_Number is range 1 .. Max_Consumer_Count;
> :   Producers : array (Producer_Number) of Company;
> :   Consumers : array (Consumer_Number) of Company;
> :
> :Producer_Number and Consumer_Number are distinct integer types whose
> :uses cannot be intermixed without an explicit type conversion.  (This is
> :a degree of type protection unavailable in C or C++).  Certain variables
> :can be declared to be of type Producer and others of type Consumer.  An

Oops.  I meant to say "Certain variables can be declared to be of type
Producer_Number and others of type Consumer_Number."  Sorry if this
caused any confusion.

> :attempt to use a variable of type Producer_Number to index into the
> :array Consumers will produce a compile-time type error.
> :
> :As you said, "Smalltalk does not lend itself to 'type' errors of that
> :nature."  Smalltalk programmers are no less likely than other
> :programmers to use an integer variable to index into the wrong array,
> :but since Smalltalk does not have the means to express such distinctions
> :as type distinctions, I would imagine that most Smalltalk programmers
> :would think of this as a "general logic error" rather than as the kind
> :of problem that would be caught by compile-time type checks.  (When you
> :don't have a hammer, none of your problems look like nails.)
> 
> Sure, smalltalk programmers can index into the wrong array.
> However, your example appears to be formulated for a procedural
> style of programming.  When smalltalk programmers want to
> separate consumers and producers they usually use different
> objects which reduces the tendency to produce the type of
> errors you refer to.

When you say "different objects" do you really mean "different
classes"?  If so, the Ada analog would be "different types", and that's
just what I've done above:  used different types for consumer numbers
and producer numbers.  However, with static checking, this does more
than simply "reduce the tendency to produce" this kind of error; it
causes the compiler to catch this kind of error and point it out to the
programmer even before the program is tested.

I presume you are using the word "procedural" to mean "not object
oriented".  However, there is nothing in the example above that suggests
this.  Perhaps it is the presence of a built-in array type that looks
unSmalltalk-like to you.  Fine, replace the two integer types with two
classes called producerID and consumerID, make Producers an object
belonging to some collection class with an extract method that takes a
producerID object, and make Consumers an object belonging to some
collection class with an extract method that takes a consumerID object. 
My argument remains the same:  It is easy to inadvertently send an
extract message with a producerID argument to Consumers or an extract
message with a consumerID argument to Producers.  The incorrect call
might occur only on some obscure path that testing fails to exercise. 
Strong typing allows such errors to be caught at compile time.

> Part of the power of smalltalk is the use of interface polymorphism.
> Classes do not have to inherit from the same root to be able
> to use the same message interface.  When designing the
> software for your problem one can compose methods that use
> polymorphism so that a single method can "operate" on producers
> and consumers without having to know what it is operating on.
> As a matter of fact a programmer reading the method may not
> even be able to tell if it processes consumers or producers
> because both will work.

This is s red herring.  The benefits of interface polymorphism are not
lost (in fact they are made safer) if classes must be declared to
support a given message, and any attempt to send a message to an object
not declared to support it is caught as an error at compile time.  
In Java, we could write

   interface Company is {
      abstract public void someMethod();
   }

   class ConsumerCompany implements Company {
      public void someMethod () { ... };
      ...
   }

   class ProducerCompany implements Company {
      public void someMethod () { ... };
      ...
   }

and a call X.someMethod() where X is declared to be of class Company
might invoke either the ConsumerCompany or ProducerCompany version of
someMethod, but an attempt to apply someMethod to an object whose class
does implement the Company interface would be flagged as an error at
compile time.  In Ada, we could write

   package Companies is
      type Company is abstract tagged private;
      procedure Some_Method (C: in out Company) is abstract;
      ...
   end Companies;

   package Companies.Consuming is
      type Consumer_Company is
         new Company with private;
      procedure Some_Method (CC: in out Consumer_Company);
      ...
   end Companies.Consuming;

   package Companies.Producing is
      type Producer_Company is
         new Company with private;
      procedure Some_Method (PC: in out Producer_Company);
      ...
   end Companies.Producing;

and a call Some_Method(X) where X is of type Company'Class might invoke
either the Producer_Company or Consumer_Company version of Some_Method,
but an attempt to call Some_Method with a parameter that does not belong
to the class rooted at type Company would be flagged as an error at
compile time.  The issue is not whether or not to have interface
polymorphism--every OO language does--but rather whether or not to
impose some discipline and structure on interface polymorphism, by
making the interfaces explicit and checking at compile time that they
are used consistently.

-- 
Norman H. Cohen
mailto:ncohen@watson.ibm.com
http://www.research.ibm.com/people/n/ncohen




  reply	other threads:[~1997-01-27  0:00 UTC|newest]

Thread overview: 467+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-01-16  0:00 OO, C++, and something much better! Jon S Anthony
1997-01-17  0:00 ` Don Harrison
1997-01-16  0:00   ` Matthew Heaney
1997-01-17  0:00     ` Alan Lovejoy
1997-01-17  0:00       ` Norman H. Cohen
1997-01-17  0:00         ` Alan Lovejoy
1997-01-18  0:00           ` Fergus Henderson
1997-01-17  0:00             ` Alan Lovejoy
1997-01-20  0:00               ` Fergus Henderson
1997-01-19  0:00                 ` Alan Lovejoy
1997-01-20  0:00               ` Damon Feldman
1997-01-19  0:00                 ` Alan Lovejoy
1997-01-20  0:00                   ` David Hanley
1997-01-21  0:00                     ` Alan Lovejoy
1997-01-22  0:00                       ` Fergus Henderson
1997-01-22  0:00                         ` Alan Lovejoy
1997-01-23  0:00                         ` Bob Jarvis
1997-01-20  0:00                   ` Bill Gooch
1997-01-20  0:00                   ` Graham Hughes
1997-01-21  0:00                     ` Alan Lovejoy
1997-01-21  0:00                       ` Matt Kennel
1997-01-21  0:00                       ` Marc Robertson
1997-01-24  0:00                         ` Mark Windholtz
1997-01-27  0:00                           ` David Hanley
     [not found]                             ` <32EE2FEE.62FE@p <32EE8415.2F5B@netright.com>
1997-01-28  0:00                               ` Eric Clayberg
1997-01-29  0:00                                 ` David Hanley
1997-01-29  0:00                                   ` Eric Clayberg
1997-01-28  0:00                             ` David Hanley
1997-01-28  0:00                             ` Eric Clayberg
1997-01-28  0:00                         ` Alan Lovejoy
1997-01-29  0:00                           ` Matt Kennel
1997-01-30  0:00                             ` Alan Lovejoy
1997-01-30  0:00                               ` Black box or white box (Re: OO, C++, and something much better!) David L. Shang
1997-01-30  0:00                               ` OO, C++, and something much better! David L. Shang
1997-01-29  0:00                         ` Jun Nolasco
1997-01-22  0:00                       ` Fergus Henderson
1997-01-22  0:00                         ` Fergus Henderson
1997-01-22  0:00                         ` Eric Clayberg
1997-01-22  0:00                           ` Graham Hughes
1997-01-23  0:00                             ` Mark Woodruff
1997-01-23  0:00                             ` Eric Clayberg
1997-01-23  0:00                               ` Claus Reinke
1997-01-25  0:00                                 ` Eric Clayberg
1997-01-25  0:00                                   ` Fergus Henderson
1997-01-25  0:00                                   ` Lawrence G. Mayka
1997-01-28  0:00                                   ` Claus Reinke
1997-01-24  0:00                               ` Don Harrison
1997-01-24  0:00                                 ` Eric Clayberg
1997-01-28  0:00                                   ` Don Harrison
1997-01-24  0:00                             ` Richard A. O'Keefe
     [not found]                               ` <E4voIF.86o@world.std.com>
1997-02-12  0:00                                 ` Ulf Schuenemann
1997-01-23  0:00                           ` Matt Kennel
1997-01-25  0:00                             ` Eric Clayberg
1997-01-27  0:00                             ` Jon S Anthony
1997-01-23  0:00                           ` Robb Nebbe
1997-01-23  0:00                             ` David Hanley
1997-01-25  0:00                             ` Eric Clayberg
1997-01-24  0:00                           ` Fergus Henderson
1997-01-24  0:00                             ` Alan Lovejoy
1997-01-26  0:00                             ` Fergus Henderson
     [not found]                             ` <32E9BAAC. <5ce8t3$6gv@mulga.cs.mu.OZ.AU>
1997-01-28  0:00                               ` Alan Lovejoy
1997-01-28  0:00                             ` Alan Knight
1997-01-29  0:00                               ` Nick Leaton
1997-01-29  0:00                             ` Fergus Henderson
1997-01-30  0:00                             ` Alan Lovejoy
1997-01-24  0:00                           ` Richard A. O'Keefe
1997-01-25  0:00                         ` Joachim Durchholz
1997-01-27  0:00                         ` Rolf Breuning
1997-01-27  0:00                         ` Ed Shirk
1997-01-22  0:00                   ` Damon Feldman
1997-01-29  0:00                   ` Joachim Durchholz
1997-01-25  0:00                 ` Jon S Anthony
1997-01-25  0:00                 ` Eric Clayberg
1997-01-26  0:00                   ` Robert Dewar
1997-01-27  0:00                     ` Samuel S. Shuster
1997-01-27  0:00                       ` Richard Kenner
1997-01-29  0:00                         ` Robert Dewar
1997-01-30  0:00                           ` Eirik Mangseth
1997-01-28  0:00                       ` Jun Nolasco
1997-01-29  0:00                       ` Robert Dewar
1997-01-29  0:00                         ` Richard Kenner
1997-01-29  0:00                           ` David Hanley
1997-01-29  0:00                             ` Richard Kenner
1997-01-30  0:00                           ` Nick Leaton
1997-01-30  0:00                             ` Robert Dewar
1997-01-30  0:00                             ` Richard Kenner
1997-01-30  0:00                               ` Nick Leaton
1997-01-27  0:00                     ` Bob Jarvis
1997-01-27  0:00                       ` Robert Dewar
1997-01-27  0:00                         ` Eric Clayberg
1997-01-27  0:00                         ` Robert A Duff
1997-01-29  0:00                           ` Robert Dewar
1997-01-27  0:00                         ` Matthew Heaney
1997-01-27  0:00                         ` Eric Clayberg
1997-01-29  0:00                           ` Robert Dewar
1997-01-29  0:00                             ` Robert A Duff
1997-01-29  0:00                               ` Eric Clayberg
1997-01-28  0:00                     ` Robert I. Eachus
1997-02-08  0:00                   ` Robin Rosenberg
1997-01-27  0:00                 ` Eric Clayberg
1997-01-29  0:00                   ` Fergus Henderson
1997-01-29  0:00                   ` Joachim Durchholz
1997-01-27  0:00                 ` Jon S Anthony
1997-01-27  0:00                 ` David Hanley
1997-01-29  0:00                   ` Joachim Durchholz
1997-01-29  0:00                     ` Dennis Smith
1997-01-28  0:00                 ` Robert I. Eachus
1997-01-28  0:00                 ` Luther Hampton
1997-01-28  0:00                 ` Eric Clayberg
1997-01-28  0:00                   ` Matt Kennel
1997-01-28  0:00                 ` David Hanley
1997-01-28  0:00                   ` Jacqueline U. Robertson
1997-01-29  0:00                     ` Fergus Henderson
1997-01-29  0:00                     ` David Hanley
1997-01-30  0:00                     ` Robert C. Martin
     [not found]                       ` <5cr068$gpa@uni.library.ucla.edu>
1997-06-27  0:00                         ` David Shang
1997-06-28  0:00                           ` Mike Stark
1997-06-28  0:00                           ` Ronald E Jeffries
1997-06-29  0:00                           ` Mike Anderson
1997-06-29  0:00                             ` Robert Dewar
1997-06-30  0:00                               ` Kohler Markus
1997-01-29  0:00                   ` Joachim Durchholz
1997-01-28  0:00                 ` David Hanley
1997-01-29  0:00                 ` David Hanley
1997-01-29  0:00                 ` Eric Clayberg
1997-01-29  0:00                 ` Jon S Anthony
1997-01-29  0:00                 ` Rolf Breuning
1997-01-29  0:00                 ` Eric Clayberg
1997-01-25  0:00               ` Robert Dewar
1997-01-26  0:00                 ` James O'Connor
1997-01-26  0:00                   ` George Wolke
1997-01-26  0:00                   ` Robert Dewar
1997-01-27  0:00                   ` Jerry van Dijk
1997-01-28  0:00                     ` Robert A Duff
1997-01-28  0:00                       ` Jerry van Dijk
1997-01-29  0:00                       ` Stanley R. Allen
1997-01-30  0:00                         ` Robert A Duff
1997-01-28  0:00                 ` Alan Lovejoy
1997-01-28  0:00                 ` Jon S Anthony
1997-01-29  0:00                   ` Robert A Duff
1997-01-25  0:00               ` Robert Dewar
1997-01-27  0:00                 ` Bob Jarvis
1997-01-27  0:00                   ` Robert Dewar
1997-01-28  0:00                 ` Alan Lovejoy
1997-01-19  0:00             ` Soren Skogstad Nielsen
1997-01-20  0:00             ` Joachim Durchholz
1997-01-26  0:00               ` Joachim Durchholz
1997-01-29  0:00                 ` Multiple Type Interfaces Jon S Anthony
1997-01-28  0:00               ` Dave Gibson
1997-01-28  0:00                 ` Robert A Duff
1997-01-28  0:00               ` Norman H. Cohen
1997-01-28  0:00                 ` david scott gibson
1997-01-28  0:00                   ` Matthew Heaney
1997-01-29  0:00                     ` david scott gibson
1997-01-29  0:00                       ` Robert A Duff
1997-01-29  0:00                         ` david scott gibson
1997-01-21  0:00             ` OO, C++, and something much better! Matthew S. Whiting
1997-01-22  0:00               ` Fergus Henderson
1997-01-22  0:00                 ` Eric Clayberg
1997-01-23  0:00                   ` Don Harrison
1997-01-27  0:00                     ` John Woods
1997-01-28  0:00                       ` Alan Lovejoy
1997-01-23  0:00                   ` Combining dynamic and static typing Don Harrison
1997-01-24  0:00                     ` Erik M. Buck
     [not found]                       ` <01bc0b21$6a8293e0$7df2ad80@wkst01.milagro.austin.tx.us>
1997-01-25  0:00                         ` Nathan M. Urban
1997-01-28  0:00                           ` David L. Shang
1997-01-28  0:00                             ` Luther Hampton
1997-01-29  0:00                               ` Marc De Scheemaecker
1997-01-28  0:00                             ` Nathan M. Urban
1997-01-29  0:00                               ` David L. Shang
1997-01-29  0:00                               ` Russ McClelland
     [not found]                             ` <5d0efr$meb@news.xmission.com>
1997-02-09  0:00                               ` daniel damian burden
1997-01-27  0:00                     ` Robert I. Eachus
1997-01-27  0:00                     ` David L. Shang
1997-01-28  0:00                     ` Robert C. Martin
1997-01-29  0:00                       ` David L. Shang
1997-01-24  0:00                   ` OO, C++, and something much better! Andy Bower
1997-01-25  0:00                     ` Robert Dewar
1997-01-26  0:00                       ` William Clodius
1997-01-25  0:00                     ` Robert Dewar
1997-01-26  0:00                       ` Eric Clayberg
1997-01-26  0:00                         ` Robert Dewar
1997-01-26  0:00                         ` Robert Dewar
1997-01-27  0:00                   ` Robert C. Martin
1997-01-29  0:00                     ` Robert Dewar
1997-01-29  0:00                       ` Robert A Duff
1997-01-22  0:00                 ` Don Harrison
1997-01-22  0:00                   ` John Kuszewski
1997-01-23  0:00                     ` Don Harrison
1997-01-23  0:00                       ` Travis Griggs
1997-01-23  0:00                       ` Tansel Ersavas
1997-01-24  0:00                     ` Fergus Henderson
1997-01-22  0:00                 ` Alan Lovejoy
1997-01-21  0:00             ` Matthew S. Whiting
1997-01-24  0:00             ` Tansel Ersavas
1997-01-24  0:00             ` Tansel Ersavas
1997-01-25  0:00               ` Robert A Duff
1997-01-26  0:00                 ` Bob Haugen
1997-01-26  0:00                   ` Larry J. Elmore
1997-01-26  0:00                     ` Eric Clayberg
1997-01-26  0:00                   ` Robert Dewar
1997-01-26  0:00                     ` TanselErsavas
1997-01-27  0:00                     ` Samuel S. Shuster
1997-01-27  0:00                   ` David Hanley
1997-01-26  0:00                 ` Robert Dewar
1997-01-26  0:00                   ` James O'Connor
1997-01-26  0:00                     ` TanselErsavas
1997-01-26  0:00                       ` Robert Dewar
1997-01-27  0:00                         ` Eric Clayberg
1997-01-28  0:00                           ` Antoine Trux
1997-01-29  0:00                           ` Robert Dewar
1997-01-25  0:00               ` Fergus Henderson
1997-01-24  0:00             ` Tansel Ersavas
1997-01-25  0:00               ` Damon Feldman
1997-01-26  0:00                 ` Felix Beer
1997-01-28  0:00               ` Robert C. Martin
1997-01-28  0:00                 ` Matt Kennel
1997-01-29  0:00                 ` Del Archer
1997-01-27  0:00             ` David Hanley
1997-01-28  0:00               ` OO, C++, and more and more useless arguments! Robert C. Martin
1997-01-28  0:00             ` OO, C++, and something much better! Alan Lovejoy
1997-01-28  0:00             ` Al Christians
1997-01-29  0:00             ` Alan Lovejoy
1997-02-21  0:00             ` Eric W. Nikitin
1997-02-21  0:00               ` Brian Rogoff
1997-02-21  0:00             ` Chris Bitmead
1997-02-24  0:00             ` Jon S Anthony
1997-02-24  0:00               ` Brian Rogoff
1997-02-25  0:00                 ` Eric W. Nikitin
1997-01-21  0:00           ` Norman H. Cohen
1997-01-22  0:00             ` Eric Clayberg
1997-01-23  0:00               ` Norman H. Cohen
1997-01-24  0:00                 ` Eric Clayberg
1997-01-27  0:00                   ` Norman H. Cohen
1997-01-28  0:00                     ` Tim Ottinger
1997-01-29  0:00                       ` Ted Dennison
1997-01-24  0:00                 ` traymond
1997-01-27  0:00                   ` Norman H. Cohen [this message]
1997-01-28  0:00                     ` traymond
1997-01-25  0:00                 ` Tansel Ersavas
1997-01-27  0:00                   ` Norman H. Cohen
1997-01-27  0:00                     ` Brian Rogoff
1997-01-28  0:00                       ` Reflection in Ada (was: Re: OO, C++, and something much better!) Norman H. Cohen
1997-01-29  0:00                         ` Eric W. Nikitin
1997-01-30  0:00                       ` OO, C++, and something much better! Tim Ottinger
1997-01-23  0:00               ` Static vs. Dynamic typing again (was Re: OO, C++, and something much better!) Richie Bielak
1997-01-23  0:00                 ` Bill Gooch
1997-01-23  0:00                 ` Eric Clayberg
1997-01-23  0:00                   ` Richie Bielak
1997-01-23  0:00                     ` Rolf Breuning
1997-01-23  0:00                     ` Eric Clayberg
1997-01-24  0:00                       ` Robb Nebbe
1997-01-25  0:00                         ` OO, C++, and something much better! David N. Smith
1997-01-24  0:00                       ` Static vs. Dynamic typing again (was Re: OO, C++, and something much better!) Richie Bielak
1997-01-24  0:00                         ` Bob Jarvis
1997-01-24  0:00                           ` Richie Bielak
1997-01-27  0:00                             ` Eric W. Nikitin
1997-01-25  0:00                           ` Robert A Duff
1997-01-30  0:00                             ` Damon Feldman
1997-01-30  0:00                               ` Robert A Duff
1997-01-30  0:00                               ` Fergus Henderson
1997-01-30  0:00                               ` Defintion, again, was Re: Static vs. Dynamic typing again David L. Shang
1997-02-09  0:00                               ` Static vs. Dynamic typing again (was Re: OO, C++, and something much better!) Piercarlo Grandi
1997-02-10  0:00                                 ` Matt Kennel
1997-02-14  0:00                                   ` Piercarlo Grandi
1997-02-15  0:00                       ` Pieter Schoenmakers
1997-02-16  0:00                         ` Piercarlo Grandi
1997-01-27  0:00                     ` Jun Nolasco
1997-01-28  0:00                     ` Mark Windholtz
1997-01-28  0:00                       ` Richie Bielak
1997-01-23  0:00                   ` Richie Bielak
1997-01-24  0:00                     ` Eirik Mangseth
     [not found]                     ` <32E85588.1978@parcplace.com>
1997-01-26  0:00                       ` Paul Perkins
1997-01-26  0:00                         ` Robert A Duff
1997-01-29  0:00                           ` John Gale
1997-01-30  0:00                             ` Robert A Duff
1997-01-28  0:00                       ` Damon Feldman
1997-01-28  0:00                         ` Eric Clayberg
1997-01-28  0:00                 ` Alan Knight
1997-02-08  0:00                 ` Static vs. Dynamic typing again (was Re: OO, C++, and something mu Joachim Durchholz
1997-01-23  0:00             ` OO, C++, and something much better! James O'Connor
1997-01-29  0:00               ` Stanley R. Allen
1997-01-30  0:00                 ` Robert A Duff
1997-01-27  0:00           ` Jon S Anthony
1997-01-19  0:00       ` Keith Thompson
1997-01-22  0:00     ` Don Harrison
1997-01-23  0:00       ` Norman H. Cohen
1997-01-24  0:00         ` Don Harrison
1997-01-27  0:00           ` Norman H. Cohen
1997-01-29  0:00             ` "(Sub)type" -safety Don Harrison
1997-01-29  0:00               ` Jon S Anthony
1997-01-30  0:00                 ` Don Harrison
1997-01-23  0:00       ` OO, C++, and something much better! Robert I. Eachus
1997-01-20  0:00   ` Ole-Hjalmar Kristensen FOU.TD/DELAB
1997-01-24  0:00   ` Jon S Anthony
1997-01-26  0:00   ` Eric Clayberg
1997-01-27  0:00   ` Jon S Anthony
1997-01-27  0:00   ` Jon S Anthony
1997-01-27  0:00   ` Jon S Anthony
1997-01-28  0:00   ` Jon S Anthony
1997-01-29  0:00   ` Stephen J Bevan
1997-01-21  0:00 ` Joachim Durchholz
1997-01-22  0:00   ` Richard A. O'Keefe
1997-01-27  0:00     ` Robert A Duff
1997-01-27  0:00       ` Bob Jarvis
1997-01-28  0:00         ` Travis Griggs
1997-01-28  0:00       ` Russ McClelland
1997-01-28  0:00       ` Norman H. Cohen
1997-01-27  0:00     ` Robert Dewar
1997-01-27  0:00       ` Robert A Duff
1997-01-29  0:00         ` Robert Dewar
1997-01-27  0:00   ` John Woods
1997-01-22  0:00 ` Eric Clayberg
1997-01-23  0:00 ` Joachim Durchholz
1997-01-24  0:00 ` Joachim Durchholz
1997-01-29  0:00   ` Multiple Type Interfaces Joachim Durchholz
1997-01-25  0:00 ` OO, C++, and something much better! Tansel Ersavas
1997-01-25  0:00 ` James O'Connor
1997-01-26  0:00   ` Lawrence G. Mayka
1997-01-26  0:00     ` James O'Connor
1997-01-25  0:00 ` Eric Clayberg
1997-01-27  0:00 ` Norman H. Cohen
1997-02-07  0:00 ` Richard A. O'Keefe
1997-02-07  0:00   ` Alan Lovejoy
1997-02-12  0:00     ` Piercarlo Grandi
1997-02-13  0:00       ` Alan Lovejoy
     [not found]         ` <yf3ybcsm5ce.fsf@sabi.demon.co.uk>
1997-02-14  0:00           ` Alan Lovejoy
1997-02-16  0:00             ` Piercarlo Grandi
1997-02-16  0:00               ` Alan Lovejoy
1997-02-17  0:00                 ` Piercarlo Grandi
1997-02-13  0:00     ` Richard A. O'Keefe
1997-02-13  0:00       ` Alan Lovejoy
1997-02-18  0:00         ` Richard A. O'Keefe
1997-02-19  0:00           ` William Clodius
1997-02-19  0:00             ` Mike Klein
1997-02-19  0:00           ` richard
1997-02-19  0:00           ` Mike Klein
1997-02-15  0:00   ` Jon S Anthony
1997-02-16  0:00     ` Piercarlo Grandi
1997-02-16  0:00   ` Definition of "operator" (was: OO, C++, and something much better!) Alan Lovejoy
1997-02-19  0:00     ` Dave Schaumann
1997-02-19  0:00       ` Anders Pytte
1997-02-16  0:00   ` OO, C++, and something much better! Jon S Anthony
1997-02-18  0:00     ` Richard A. O'Keefe
1997-02-20  0:00       ` Matt Kennel
1997-02-20  0:00         ` Anders Pytte
1997-02-17  0:00   ` Jon S Anthony
1997-02-19  0:00     ` Piercarlo Grandi
1997-02-17  0:00   ` Definition of "operator" (was: OO, C++, and something much better!) Alan Lovejoy
1997-02-19  0:00     ` David L. Shang
1997-02-21  0:00     ` Jon S Anthony
1997-02-24  0:00       ` David L. Shang
1997-02-25  0:00       ` Jon S Anthony
1997-02-17  0:00   ` OO, C++, and something much better! Alan Lovejoy
1997-02-17  0:00   ` Jon S Anthony
1997-02-19  0:00     ` Piercarlo Grandi
1997-02-19  0:00       ` Mike Klein
1997-02-17  0:00   ` Jon S Anthony
1997-02-18  0:00   ` Bernard Badger
1997-02-18  0:00   ` Jon S Anthony
1997-02-19  0:00     ` Piercarlo Grandi
1997-02-19  0:00     ` Piercarlo Grandi
1997-02-18  0:00   ` Definition of "operator" (was: OO, C++, and something much better!) Jon S Anthony
1997-02-21  0:00   ` OO, C++, and something much better! Jon S Anthony
1997-02-24  0:00     ` Piercarlo Grandi
1997-02-22  0:00   ` Jon S Anthony
1997-02-22  0:00   ` Jon S Anthony
1997-02-22  0:00   ` Jon S Anthony
1997-02-22  0:00   ` Jon S Anthony
1997-02-25  0:00     ` Richard A. O'Keefe
1997-02-22  0:00   ` Jon S Anthony
1997-02-23  0:00   ` Definition of "operator" (was: OO, C++, and something much better!) Richard Katz
1997-02-24  0:00     ` David L. Shang
1997-02-25  0:00   ` OO, C++, and something much better! Jon S Anthony
1997-02-27  0:00     ` Clayton Weaver
1997-02-25  0:00   ` Jon S Anthony
1997-02-25  0:00   ` Jon S Anthony
1997-02-26  0:00   ` Mike Klein
1997-02-25  0:00 ` Jon S Anthony
  -- strict thread matches above, loose matches on Subject: below --
1997-01-28  0:00 Ell
1997-01-28  0:00 Snowball Info
1997-01-27  0:00 Ell
1997-01-22  0:00 Ell
1997-01-21  0:00 Ell
1997-01-21  0:00 ` Ole-Hjalmar Kristensen FOU.TD/DELAB
1997-01-08  0:00 Sazonov Cyril
1997-01-11  0:00 ` Bjarne Stroustrup
1997-01-01  0:00 What is wrong with OO ? Jon S Anthony
1997-01-02  0:00 ` Robert C. Martin
1997-01-03  0:00   ` Eirik Mangseth
1997-01-03  0:00     ` What is wrong with OO O X g Greg Comeau
1997-01-04  0:00       ` OO, C++, and something much better! John (Max) Skaller
1997-01-04  0:00         ` vlad
1997-01-05  0:00         ` Mike Anderson
1997-01-06  0:00         ` Stanley Allen
1997-01-09  0:00           ` Jon S Anthony
1997-01-06  0:00         ` Chris Brand
1997-01-08  0:00   ` Robert I. Eachus
1997-01-09  0:00   ` Bertrand Meyer
1997-01-27  0:00     ` Richard Riehle
1997-01-10  0:00   ` Robb Nebbe
1997-01-10  0:00   ` Robert I. Eachus
1997-01-04  0:00 ` Pieter Schoenmakers
1997-01-06  0:00 ` Ole-Hjalmar Kristensen FOU.TD/DELAB
1997-01-06  0:00   ` Michael F Brenner
1997-01-06  0:00     ` Tucker Taft
1997-01-07  0:00       ` Robert Dewar
1997-01-08  0:00     ` Robert Dewar
1997-01-07  0:00   ` Jay Martin
1997-01-08  0:00     ` Ken Garlington
1997-01-08  0:00       ` Robert Dewar
1997-01-08  0:00         ` Robert Dewar
1997-01-09  0:00         ` Ted Dennison
1997-01-07  0:00   ` Andrew Koenig
1997-01-10  0:00     ` Norman H. Cohen
1997-01-12  0:00   ` Richard Riehle
1997-01-07  0:00 ` Stanley Allen
1997-01-07  0:00   ` Robert Dewar
1997-01-07  0:00     ` Bertrand Meyer
1997-01-08  0:00       ` Ken Garlington
1997-01-08  0:00       ` Matthew Heaney
1997-01-10  0:00     ` Keith Thompson
1997-01-10  0:00       ` Robert Dewar
1997-01-10  0:00         ` Robert Dewar
1997-01-15  0:00         ` Richard Kenner
1997-01-15  0:00           ` Fergus Henderson
1997-01-20  0:00           ` Andrew Koenig
1997-01-25  0:00           ` Robert Dewar
1997-01-15  0:00       ` Ole-Hjalmar Kristensen FOU.TD/DELAB
1997-01-08  0:00 ` Jon S Anthony
1997-01-08  0:00   ` Mark A Biggar
1997-01-09  0:00     ` Don Harrison
1997-01-10  0:00       ` Roy Phillips
1997-01-27  0:00         ` Nick Leaton
1997-01-28  0:00           ` matthew mclellan
1997-01-09  0:00   ` Don Harrison
1997-01-09  0:00     ` Robert Dewar
1997-01-10  0:00       ` Norman H. Cohen
1997-01-10  0:00       ` Bart Samwel
1997-01-10  0:00         ` Robert Dewar
1997-01-10  0:00       ` Ken Garlington
1997-01-13  0:00       ` Don Harrison
1997-01-13  0:00         ` Robert Dewar
1997-01-14  0:00           ` Don Harrison
1997-01-13  0:00         ` Ken Garlington
1997-01-13  0:00           ` Norman H. Cohen
1997-01-13  0:00           ` Robert Dewar
1997-01-15  0:00             ` Ken Garlington
1997-01-17  0:00               ` Keith Thompson
1997-01-16  0:00             ` Keith Thompson
1997-01-16  0:00               ` Ken Garlington
1997-01-14  0:00           ` Michael F Brenner
1997-01-14  0:00           ` Don Harrison
1997-01-10  0:00     ` Jon S Anthony
1997-01-13  0:00       ` Don Harrison
1997-01-13  0:00         ` Robert I. Eachus
1997-01-15  0:00           ` Don Harrison
1997-01-13  0:00         ` Don Harrison
1997-01-14  0:00           ` Jeff Carter
1997-01-15  0:00             ` Don Harrison
1997-01-17  0:00               ` Jon S Anthony
1997-01-17  0:00               ` Norman H. Cohen
1997-01-18  0:00           ` Patrick Doyle
1997-01-20  0:00           ` Jon S Anthony
1997-01-08  0:00 ` David Emery
1997-01-09  0:00   ` Don Harrison
1997-01-10  0:00     ` Marky Mark
1997-01-14  0:00       ` Don Harrison
1997-01-08  0:00 ` Kohler Markus
1997-01-10  0:00 ` Jon S Anthony
1997-01-10  0:00 ` Matt Austern
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox