Rubies:

Just out of curiosity, suppose a C++ host wants to evaluate a Ruby string,
and that might run long.

Suppose putting Ruby into a thread were against my religion, or something.

Is there a lower level eval() that operates one tick of the Ruby interpreter
at a time? Then I could call it in a loop, and provide a Cancel button for
it.

The other cheap workaround, besides threads, is write a C++ function called
detectCancellation(), bind it to Ruby, and call it from the bottom of the
activities inside the evaluated string.

-- 
  Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces