MacRuby makes intensive use of many system Frameworks and libraries, which makes us limited by
the CAVEATS of
fork(). What it means for us, is that we can use
fork() for the typical pipe+dup2+fork+exec (any exec from the exec family) to run a binary and read its output. That's what we use for
#` (well we actually use posix_spawn, but it is equivalent). But callin the
exec() family is pretty much all we can safely do within a forked program. Because of the said caveats, we cannot do any kind of ruby execution, not even "just" calling
#exec, since it would use the MacRuby dispatcher, the Obj-C runtime etc.