On Fri, Jun 03, 2005 at 07:18:56PM +0200, Leopold Toetsch wrote:
> Chip Salzenberg wrote:
> >On Fri, Jun 03, 2005 at 02:50:38PM +0200, Leopold Toetsch wrote:
> >>I've announced and summarized all these changes, e.g.
> >>http://xrl.us/gayp  on Apr. 8th
> >
> >I didn't realize the implications when that was posted.  I think the
> >I think the native fallbacks are important.
> 
> ... and probably dangerous. Given two array-ish instances of a class 
> that implements __get_integer (get array size)

Well, aside from everything else, I think __get_integer shouldn't
return array size.  But anyway.

> >> cl = subclass "Float", "MyFloat"
> >
> >In particular, I don't like the idea that an empty subclass provides
> >functionality that ought to have been available already.
> 
> ++verbose please.

Perhaps I misunderstood, but I thought you were implying that MyFloat
would automatically have some features that Float did not, just by
virtue of the derivation.  Sorry if I got that wrong.

> I still don't see the point that an arbitrary "Foo" class shall have MMD 
> functions of a Float/Integer mix.

Hm.  That's an interesting point.

One could argue that by providing __get_integer, Foo class is
automatically implying that it would serve where an Integer would.
This is obviously what Dan was expecting.  :-,

On the other hand, C++ has been down that road, and it has potholes.
Just because an X->Y conversion exists does _not_ imply that an X will
do every place you want a Y.  Ask anyone who's accidentally passed a
string as a char* without noticing.  (C< operator char * () > is _not_
always your friend, and see also the C<explicit> keyword in ANSI C++.)

The new status quo is looking better.
-- 
Chip Salzenberg <[EMAIL PROTECTED]>

Reply via email to