76
=item C<Parrot_Interp Parrot_new(Parrot_Interp parent)>
78
Returns a new Parrot interpreter.
80
The first created interpreter (C<parent> is C<NULL>) is the last one
88
PARROT_CANNOT_RETURN_NULL
91
Parrot_new(ARGIN_NULLOK(Parrot_Interp parent))
93
ASSERT_ARGS(Parrot_new)
94
/* inter_create.c:make_interpreter builds a new Parrot_Interp. */
95
return make_interpreter(parent, PARROT_NO_FLAGS);
100
=item C<void Parrot_init_stacktop(PARROT_INTERP, void *stack_top)>
102
Initializes the new interpreter when it hasn't been initialized before.
104
Additionally sets the stack top, so that Parrot objects created
105
in inner stack frames will be visible during GC stack walking code.
106
B<stack_top> should be the address of an automatic variable in the caller's
107
stack frame. All unanchored Parrot objects (PMCs) must live in inner stack
108
frames so that they are not destroyed during GC runs.
110
Use this function when you call into Parrot before entering a run loop.
118
Parrot_init_stacktop(PARROT_INTERP, ARGIN(void *stack_top))
120
ASSERT_ARGS(Parrot_init_stacktop)
121
interp->lo_var_ptr = stack_top;
122
Parrot_gbl_init_world_once(interp);
76
127
=item C<Parrot_Interp make_interpreter(Interp *parent, INTVAL flags)>
78
129
Create the Parrot interpreter. Allocate memory and clear the registers.