Re: Calling PIR from a PMC

2005-03-15 Thread Leopold Toetsch
William Coleda <[EMAIL PROTECTED]> wrote: > If only the first character is the return value, how does one deal > with subroutines that return multiple values? Well, you can't access multiple return values from within the C function, where you are calling the PIR code. OTOH, if the PIR code did r

Re: Calling PIR from a PMC

2005-03-14 Thread William Coleda
Jeff Horwitz wrote: On Mon, 14 Mar 2005, William Coleda wrote: How does one call a PIR-defined sub from C? use the Parrot_call_sub_* API. Ah, thank you, much better. Now, given the perldoc for src/extend.c, "void* Parrot_call_sub(Parrot_INTERP interpreter, Parrot_PMC sub, const cha

Re: Calling PIR from a PMC

2005-03-14 Thread Jeff Horwitz
On Mon, 14 Mar 2005, William Coleda wrote: > How does one call a PIR-defined sub from C? use the Parrot_call_sub_* API. > My current best guess is, to invoke the PIR sub "Tcl::Joe": > > PMC *invokeme; > STRING *Tcl,*joe; > Tcl = string_from_const_cstring(INTERP, "Tcl", 3); >

Calling PIR from a PMC

2005-03-14 Thread William Coleda
How does one call a PIR-defined sub from C? My current best guess is, to invoke the PIR sub "Tcl::Joe": PMC *invokeme; STRING *Tcl,*joe; Tcl = string_from_const_cstring(INTERP, "Tcl", 3); joe = string_from_const_cstring(INTERP, "joe", 3); invokeme = Parrot_find_global(INTER