Re: status update
[email protected] (Dan Sugalski) Wed, 3 Mar 2004 09:11:47 -0500
| Newsgroups | perl.perl6.internals,perl.ponie.dev |
|---|---|
| Message-ID | <a06010200bc6b981068ee@[10.0.1.2]> |
At 10:35 AM +0000 3/3/04, Arthur Bergman wrote:
>On 3 Mar 2004, at 08:09, Leopold Toetsch wrote:
>
>>
>>>I wasn't aware that the Parrot DOD/GC would run even if I wasn't
>>>running any parrot bytecode, so when we started executing larger
>>>amounts of perl code, things got ugly because parrot was GCing from
>>>under our feet!
>>
>>Do you initialize interpreter->lo_var_ptr? If you aren't entering any
>>runloop and this pointer isn't set, you will still have DOD bugs,
>>because the processor stack will not be marked properly.
>>
>>You can set this pointer to the address of an automatic variable in main
>>(or wherever you construct Parrot_Interp) or follow the scheme used in
>>t/src/basic_3, i.e. run your code via Parrot_run_native().
>>
>>>Cheers
>>>Arthur
>>
>>leo
>>
>
>All I do is
>PL_Parrot = Parrot_new(0)
>Parrot_init(PL_Parrot)
>
>Are you saying I have to initialize PL_Parrot-> lo_var_ptr ? I
>cannot actually do that using the current extending API :/
We'll add in a highwater registry mark routine to the API.
--
Dan
--------------------------------------"it's like this"-------------------
Dan Sugalski even samurai
[email protected] have teddy bears and even
teddy bears get drunk