http://mooix.net/
For those (like me) who like adventure-text style environments, this is the
ultimate. A hybrid of MOO (Lambdamoo style) code and unix, Joey Hess (one of
the Debian folks) formerly wrote perlmoo, and this is far better. Take a
look...
Some of mooix's features (and buzzwords) include:
* Methods can be written in _any_ language.
Because mooix methods are regular unix programs, any program written in
any language can be used as a mooix method. Write methods in C for speed,
take advantage of perl's text processing power, or python's OO goodness.
Or even write something in shell script, just 'cause you can. No more
struggling with a crippled moo-specific language.
* Flexible user authentication, and login via ssh, telnet, etc.
Since mooix is (normally) logged into when a user logs into the unix
system that hosts it, mooix user authentication can be based on PAM, NIS,
or whatever other technoligy you like. And the user can log in using ssh,
telnet, or whatever other remote login method you want to install.
* Multiple sessions per user.
Have you ever wanted to have more than one window open on a moo, each
logged in as the same user? Mooix makes it easy. Log in from work without
logging out from home (just don't let the boss catch you..).
* Natural Language Processing.
Mooix processes plain English to figure out what you mean.There's no
need to talk to it in stilted zork-ese ("get lamp"), when you can say
"Pick up the lamp and light it, then enter the cave". (You can still use
the short forms if you prefer.)
* Use your favorite unix tools in the moo.
You can write programs while logged into the moo, using your favorite
editor. The moo makes use of other unix tools like pagers, as well.
* Hierarchical object-oriented database.
Suprise! This is just the regular unix filesystem; a mooix object is a
special directory, a method is a program in a directory, etc. This makes
for easy object maintanance and administration using your favorite file
managing tools.
* Method sandboxing.
Each method runs in its own sandbox, so no method can interfere with any
other.
* Enhanced permissions system.
Mooix extendes the traditional unix file permissions system with an
object oriented twist. The added semantics eliminate the need for any
set-uid methods, or world-writable files. They make it easy to write an
object and let anyone fiddle with it, without much worry about them
tricking its methods into doing something you did not intend.
* Upgradability.
Since mooix uses the unix filesystem as its object database, and because
of a special object splitting method used to partition the core moo
objects between immutable objects in /usr and locally-changeable objects
in /var, it is possible, and rather easy to upgrade a moo database
without losing your local changes. It may prove to be possible to do many
mooix upgrades without brining the moo down at all!
* Pre-emptive multitasking environment.
Since mooix methods run as regular unix processes, a bunch of them can be
running at one time. With no messing with threads, and no worries about
an expensive operation locking up everyone's moo sesion until it finishes.
* Scalability.
Unlike some moos, mooix supports an effectively unlimited number of
objects of any size (just add disk space). Mooix requires about five
megabytes of memory per user logged in, and can use as much memory as
your OS and hardware support. Mooix is inherently parallelized and thus
scalable on SMP machines.
* Funky daemon name.
What other system can boast of a daemon named "mood"?
Mooix has the following noteworthy mis-feature:
- Anyone who is allowed to add code to the moo has a shell account.
That's right, because mooix methods run as regular unix processes, if
you're allowed to write a method, you're not much more than one '/bin/sh'
away from an shell (unprivledged) on the system. There are technologies
like User Mode Linux (and the virtual server patch
http://www.solucorp.qc.ca/miscprj/s_context.hc) that we hope will
alleviate this problem (and throwing a spare machine at it works pretty
well too), but for now only trusted people should be allowed to add code
to your moo. So think hard before installing mooix on your system, and
think harder before going anyone a programmer account.
__________________________________________________
Do You Yahoo!?
Yahoo! Games - play chess, backgammon, pool and more
http://games.yahoo.com/