> From [EMAIL PROTECTED] Mon Sep 27 18:50:33 1999
> X-Authentication-Warning: sun00pg2.wam.umd.edu: kevina owned process doing -bs
> Date: Mon, 27 Sep 1999 13:50:59 -0400 (EDT)
Kevin Atkinson:
> You have a collection of Shapes. Some of these shapes are circles,
> however, others are rectangle. Occasionally you will need to extract
> these specific shapes form the collection of generic shapes as there is no
> way to find the length and width of a generic shape, only its area and
> circumference. So I need to cast the objects in shapes that are *really*
> rectangles back up to rectangles.
>
> 1) test for the true type of the object
> 2) cast it back up to its true type
There's no need for a 'cast' here, as Shape can be represented as a
class. The trickier part is putting different types into a heterogenous
collection, and then manipulating according to their _individual_ types.
Unless you want to restrict yourself to a particular set of possible
types (in which case it's straightforward, anyway), this seems to me
like it _is_ a case of dynamic programming.
> > I'm aware that Haskell doesn't precisely ape that sorts of 'OOP
> > style' that the likes of C++ admits What I've yet to see is any
> > argument that this is anything other than the wisest possible decision...
> And by this you mean...
That C++ has a very poor type system.
Sl�n,
Alex.