big challenge in dynamic language design is how best to interface
to c code. problems stem from type, syntax, and semantic mismatches
between languages. many solutions have been proposed through the
years. we first briefly present several c extension facilities
for python as a case study. we then introduce a simple yet powerful
c embedding facility, called alien goo, for the goo dynamic language
of c inside
of goo code escaping back into goo as needed. we argue that alien
c call outs easy,
c interfaces simple and more complicated interfaces manageable. we
how alien goo
used in conjunction with macros adding considerably to its power.
these mechanisms can be used together to define interfaces in a declarative
manner, while avoiding excess interface layers, combining calls,
and goo specific operations. all of these features makes alien gooan
extremely lightweight and powerful c interface mechanism.