At 06:12 PM 2/7/2001 +0000, Nicholas Clark wrote:
>On Wed, Feb 07, 2001 at 05:54:14PM +0000, David Mitchell wrote:
> > Well, many of the vtable methods are operator-ish rather than value-ish,
> > presumably on the grounds of efficiency. A pure 'value' vtable wouldnt
> > have add(), concatenate() etc. Whihc leads me back to: I'm not sure
> > whether you are in favour of, or oppose, += etc being vtable methods.
>
>I'm not either. They feel like they should be operators.
>But I don't like the thought of going in and out of a lot of generic
>routines for
>
>$a = 3;
>$a += 2;
>
>when the integer scalar ought to know what the inside of another integer
>scalar looks like, and that 2 + 3 doesn't overflow.

That particular case would get caught by the optimizer (I'd hope) so it'd 
not be an issue anyway.

>Hmm. += isn't another opcode
>it's a special case of a = b + c where the PMCs for a and b are the same
>thing. And I see no real reason why it can't be part of the + entry.

Whether a special case in the code would get a speedup or not's up in the 
air. (Is the test and branch faster than a generic doing it routine?) I'd 
want to test that and see before I decided.

                                        Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to