Nicholas Clark <[EMAIL PROTECTED]> wrote:
> +void *
> +Parrot_Embed_PMC_get_pointer(Parrot_Interp interp, Parrot_PMC pmc) {
> +if(interp->lo_var_ptr) {
> +return Parrot_PMC_get_pointer(interp, pmc);
> +} else {
> +void *result; /* Doubles up as an indicator of stack top. *
On Mon, May 03, 2004 at 10:46:28AM -0400, Dan Sugalski wrote:
> Okay, here's the rules for PMCs that live outside parrot, and calling
> into parrot from the outside.
>
> 1) *ALL* PMCs which are created outside parrot must be registered
> (unless they're otherwise anchored)
> 2) No call into parr
Brent 'Dax' Royal-Gordon <[EMAIL PROTECTED]> wrote:
> Dan Sugalski wrote:
>> 3) The embedding wrapper is responsible for setting and resetting the
>> top of stack.
> Proof-of-concept:
Looks good.
Thanks, applied.
leo
At 9:33 PM +0100 5/3/04, Nicholas Clark wrote:
On Mon, May 03, 2004 at 10:46:28AM -0400, Dan Sugalski wrote:
3) The embedding wrapper is responsible for setting and resetting the
top of stack.
I don't think that this is quite right. The embedding wrapper needs to
set (and reset) the top of stack
On Mon, May 03, 2004 at 10:46:28AM -0400, Dan Sugalski wrote:
> 3) The embedding wrapper is responsible for setting and resetting the
> top of stack.
I don't think that this is quite right. The embedding wrapper needs to
set (and reset) the top of stack only if it's not set.
Otherwise this scen
On Mon, May 03, 2004 at 04:36:38PM -0400, Dan Sugalski wrote:
> At 9:33 PM +0100 5/3/04, Nicholas Clark wrote:
> >On Mon, May 03, 2004 at 10:46:28AM -0400, Dan Sugalski wrote:
> >
> >> 3) The embedding wrapper is responsible for setting and resetting the
> >> top of stack.
> >
> >I don't think that
At 9:43 PM +0100 5/3/04, Nicholas Clark wrote:
On Mon, May 03, 2004 at 04:36:38PM -0400, Dan Sugalski wrote:
At 9:33 PM +0100 5/3/04, Nicholas Clark wrote:
>On Mon, May 03, 2004 at 10:46:28AM -0400, Dan Sugalski wrote:
>
>> 3) The embedding wrapper is responsible for setting and resetting the
Dan Sugalski wrote:
3) The embedding wrapper is responsible for setting and resetting the
top of stack.
Proof-of-concept:
--- src/embed.c 2 May 2004 10:47:54 - 1.113
+++ src/embed.c 3 May 2004 19:08:23 -
@@ -666,6 +666,17 @@
void
Parrot_runcode(Interp *interpreter, int argc, char
Okay, here's the rules for PMCs that live outside parrot, and calling
into parrot from the outside.
1) *ALL* PMCs which are created outside parrot must be registered
(unless they're otherwise anchored)
2) No call into parrot from the outside needs to pass in a stack top
(though it may via a sep