MOOP was modelled closely after its predecessor and inspiration, MOO. As
such, we've mostly followed the conventions described in the LambdaMOO
Programmer's Manual. However, there are some differences (besides the
language itself), which are described here.
- Parsing (important!)
- in MOO, all functions are verbs, each of which has a defined grammar. In
MOOP, functions are just functions, and they are invoked via special "command"
structures. In short, MOOP's parsing system is completely different from
MOO's, and (we think) a bit more sophisticated.
- Directories
- MOOP includes a special type of object, the Directory, which makes its
contents look like properties. We use this extensively to keep basic objects
organized, and to avoid using object numbers. For example, $pub is a Directory
which contains several others, including one called "rooms"; if "rooms"
contains a particular object called "standard", we can refer to it as
$pub.rooms.standard. (Pretty neat, eh?)
- Extra Preposition
- in addition to the standard MOO prepositions, MOOP includes the equals
sign ("=" or " = "). This is handy for constructions such as @set
self.age=42, a little quicker than @set self.age to 42.
Website currently maintained by Joshua Macy
Last modified: Fri Feb 09 15:09:39 -0500 2001