On 6/13/05, Chip Salzenberg <[EMAIL PROTECTED]> wrote:
> Oh no ... it's even worse than you think.  Almost *any* opcode that
> operates on a PMC can trigger a continuation.  And I only need two
> words to prove it:
> 
> "Tied variables."

Isn't this *exactly* why Perl 6 is requiring you to mark tied
variables when they're declared?

In this thread and the other one, I'm seeing a lot of people getting
scared of the degenerate case, which is the most dynamic behavior
possible.  But the degenerate case is rarely the common one, and we
always knew it would come at a speed penalty.  More importantly, the
degenerate case can be ruled out pretty well by a fairly simple
lexical analysis.

In the common case of no tied variables, I think we can assume that
PMC code isn't going to do zany things like invoking some random
continuation.  If there are tied variables present which might do
strange things like that, the compiler should emit a PIR directive
saying "anything goes in this section".  Perhaps some languages will
always do that, but that's the price of working in those languages.

-- 
Brent 'Dax' Royal-Gordon <[EMAIL PROTECTED]>
Perl and Parrot hacker

Reply via email to