Hi All,
This is my first submission to the ruby-talk list. I've been using Lua
(http://www.lua.org) for some years now for some pet projects, which include
FullMoon (http://www.geocities.com/andre_leiradella/#fullmoon), a plugin for
the 3D modeler Moray that enables the authoring of other plugins in Lua.
Plugins in FullMoon probably exist in higher number than those written in
C/C++.
I've been fighting with Lua to make it look like the object plugins are
classes because Lua is not OO. Using a facility called metamethods, one can
create an OO-like environment, but some things get just too confused to use
like static class properties and calling inherited methods. I want OO
because I want to enable plugin writers to extend other objects with ease
and because I want to create a GUI for the plugins.
I've been looking for a script language that could be used in Lua's place
for FullMoon and I found Ruby. I downloaded it (3.4MB!) and I saw that it
comes with a great set of modules. So my first questions to the list are:
1) Is it possible to build Ruby without those modules? How?
2) How do I embed Ruby in a host program?
3) What are the functions that must be called to make Ruby load a program,
to create an instance of a class defined in Ruby, to call methods with this
instance etc.? Is this API documented somewhere?
4) Does Ruby support multiple inheritance or something similar to Java's
interfaces?
Best regards,
Andre de Leiradella