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