<blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
The simplest way to do this would be to define the wrapping Python</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
function code in C as a string, and to compile it into a function</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
object that you can run as a tasklet.  An example Python function</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
follows, the C part I leave to you.</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<br></blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
e.g.</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<br></blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
 def RunFunctionAndGetResult(chan, func, *args, **kwargs):</blockquote><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
     chan.send(func(*args, **kwargs))</blockquote><div><div></div></div><br><div>That was precisely the suggestion I would have made, but I was not sure it would be right. Gives me a bit more confidence when it comes to answering future questions!</div>
<div><br><div class="gmail_quote">On Tue, Jun 22, 2010 at 11:16 PM, Richard Tew <span dir="ltr"><<a href="mailto:richard.m.tew@gmail.com">richard.m.tew@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Tue, Jun 22, 2010 at 11:37 PM, Lin Luo <<a href="mailto:luolin@ccpgames.com">luolin@ccpgames.com</a>> wrote:<br>
> the caller. But I have yet to see a way to retrieve the return value of the<br>
> bound callable running as a tasklet.<br>
<br>
</div>I do not know that there is one.<br>
<div class="im"><br>
> important return value to be used later. It seems that writing such a<br>
> Micromanaging function on the C side is not very feasible, since I haven't<br>
<br>
</div>The simplest way to do this would be to define the wrapping Python<br>
function code in C as a string, and to compile it into a function<br>
object that you can run as a tasklet.  An example Python function<br>
follows, the C part I leave to you.<br>
<br>
e.g.<br>
<br>
  def RunFunctionAndGetResult(chan, func, *args, **kwargs):<br>
      chan.send(func(*args, **kwargs))<br>
<div><div></div><div class="h5"><br>
Cheers,<br>
Richard.<br>
<br>
_______________________________________________<br>
Stackless mailing list<br>
<a href="mailto:Stackless@stackless.com">Stackless@stackless.com</a><br>
<a href="http://www.stackless.com/mailman/listinfo/stackless" target="_blank">http://www.stackless.com/mailman/listinfo/stackless</a><br>
</div></div></blockquote></div><br></div>