Documentation is at lang2 and source at lang2.arc
Added an option to run the Lang program in a simple subprocess.
The single threaded event server is an elegant and high performance approach, but requires that the Lang code does its I/O using the event server facilities; so it is a poor choice for Lang libraries that do normal blocking I/O.
The subprocess style has the advantage that Lang calls are completely independent so they can do I/O or even load incompatible libraries without a problem... though it has the disadvantage of having to load Lang and needed libraries on every call.
I’m guessing a forking Lang server would be a good choice for libraries that do “normal” blocking I/O, though I haven’t implemented one yet.
scheme.display
expands into (scheme display)
, and so (scheme.display foo)
calls the Scheme function display
with the Arc expression foo
. The updated hack is at scheme0