在 2006/7/4 下午 8:50 時,Allison Randal via RT 寫到:
The :immediate feature isn't really a question of reentrancy (it doesn't hold static data over successive calls, and it doesn't return a pointerto static data).
That depends on the :immediate code. The equivalence of BEGIN { $Static::data++ }is possible through :immediate interface, and successive Parrot execution and/or IMCC compilation can be affected.
In that regard is it as bad as having static globals.
Many languages-under-development may start out interpreted and then move to compiled (punie, pheme, and TGE itself have all followed this path). It's an easy way to get started on a language implementation.
Yet none of Punie, Pheme nor TGE make use of :immediate, so I'm not sure how this sentence relates to the question.
I do agree that taking a try-and-see attitude is a valid option; in that case we can simply declare "nothing but Parrot can work with PIR", in the same way that "nothing but perl5 can work with Perl 5".
Thanks, Audrey
PGP.sig
Description: This is a digitally signed message part