[RFC] opengl_dynamic_nci branch

Peter Lobsinger plobsing at gmail.com
Fri Feb 12 18:25:30 UTC 2010


The opengl_dynamic_nci branch aims to demonstrate a different approach
to C frame building using the opengl bindings.

In stead of compiling all signature thunks statically into parrot or
generating them at runtime using a JIT, a simple utility
(tools/build/nativecall.pir) is provided to generate, from lists of
signatures, C files containing desired thunks and a loader routine
that can be invoked to load the thunks into parrot at runtime. Slight
modifications have been made to the configuration, make, and load
aspects of the OpenGL bindings to use this utility as a proof of
concept.

The benefits afforded by this approach are:
* no need for external projects to register their nci signatures with
core (config/gen/call_list/misc.in is evil and should die)
* no need to recompile parrot when a new signature is required
* no need to link parrot against a frame generation library (jit based
or otherwise)
* should work anywhere parrot's static frames would work


More information about the parrot-dev mailing list