develooper Front page | perl.perl6.internals | Postings from February 2001

Re: PDD 2, vtables

From:
Dan Sugalski
Date:
February 7, 2001 10:24
Subject:
Re: PDD 2, vtables
Message ID:
5.0.2.1.0.20010207132253.02259718@24.8.96.48
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
dan@sidhe.org                         have teddy bears and even
                                      teddy bears get drunk




nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About