request for two more entry points in the interpreter proxy

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

request for two more entry points in the interpreter proxy

ccrraaiigg
 

Hi--

     Aha, in my own Spoon VMs I'd been using a couple of entry points I
added to the interpreter proxy (sqVirtualMachine.h) that aren't in the
official version. They are getNextWakeupTick() and
setInterruptCheckCounter(), I use them in my pluggable
relinquish-processor primitive. Would whoever owns the interpreter proxy
definition add these, please? (Eliot or Dave, I assume.)


     thanks!

-C

--
Craig Latta
www.netjam.org/resume
+31   6 2757 7177
+ 1 415  287 3547

Reply | Threaded
Open this post in threaded view
|

Re: request for two more entry points in the interpreter proxy

David T. Lewis
 
On Thu, Jul 21, 2011 at 12:51:48AM +0200, Craig Latta wrote:

>
>      Aha, in my own Spoon VMs I'd been using a couple of entry points I
> added to the interpreter proxy (sqVirtualMachine.h) that aren't in the
> official version. They are getNextWakeupTick() and
> setInterruptCheckCounter(), I use them in my pluggable
> relinquish-processor primitive. Would whoever owns the interpreter proxy
> definition add these, please? (Eliot or Dave, I assume.)
>
>
>      thanks!
>
> -C

Hi Craig,

This is an interesting request, inasmuch as we are currently operating
at VM_PROXY_MINOR 12 for Cog and VM_PROXY_MINOR 9 for the standard VM.
If we want #getNextWakeupTick and #setInterruptCheckCounter: to work
for all VMs (I assume that is your intent), then I think this implies
a branch in the interpreter proxy versioning. I'm not entirely sure how
to make that work. If you just needed it to work on the Cog VMs, then it
would be safe to add a VM_PROXY_MINOR version 13 with the new definitions
(I would ask that Eliot and Andreas handle this if possible).

Assuming that the flow plugin would be the only current user of this
interface, and that you (Craig) know the implications, perhaps the most
pragmatic approach would be to just add these declarations into the
VM_PROXY_MINOR version level 8, document it with some comments, and
insist that anyone compiling this plugin use updated platforms sources.
I don't think that this would cause any problems in practice, so I
would be inclined to do it this way.

Can you supply a copy of your sqVirtualMachine.[ch] for reference?
Maybe that will clarify things, at least in my fuzzy brain.

I should say clearly here that I am not the owner of this interface,
nor am I best qualified to manage it. Advice and fresh ideas would be
appreciated, particularly if Ian, Andreas or Eliot can offer any guidance.

Dave