> Now I'm considering using Ruby for that user/prototyping part.  One of
> my requirements/goals is that the UI toolkit go between X11 and Windows
> fairly easily.  Maybe even Mac OS X.  Qt seems like the best route to
> try that.

You might also want to look at FXRuby (http://www.fxruby.org) if a native
Mac OS X binding is not required. By "native", I'm referring to a version
that wouldn't require the end-user to run a X server on their Mac; we have
had reports in the past of success with building FOX on Mac OS X as a
X11-based library and then running FOX applications using XFree86 on Mac OS
X.

As an aside, some of the other responses to your post have veered off into a
discussion of Ruby/Qt's support for overriding virtual functions. This was
one of the up-front design requirements for FXRuby and as a result it works
pretty well. So, for example, you can derive a new class from one of the
existing FOX classes, override its virtual functions, and then those
functions will get called whenever the C++ library code invokes those
virtual functions.