/
html/
<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.51
     from ProgrammersManual.texinfo on 4 March 1997 -->

<TITLE>LambdaMOO Programmer's Manual - Language</TITLE>
</HEAD>
<BODY>
Go to the <A HREF="ProgrammersManual_1.html">first</A>, <A HREF="ProgrammersManual_8.html">previous</A>, <A HREF="ProgrammersManual_10.html">next</A>, <A HREF="ProgrammersManual_77.html">last</A> section, <A HREF="ProgrammersManual_toc.html">table of contents</A>.
<P><HR><P>


<H1><A NAME="SEC9" HREF="ProgrammersManual_toc.html#TOC9">The MOO Programming Language</A></H1>

<P>
MOO stands for "MUD, Object Oriented."  MUD, in turn, has been said to stand
for many different things, but I tend to think of it as "Multi-User Dungeon"
in the spirit of those ancient precursors to MUDs, Adventure and Zork.

</P>
<P>
MOO, the programming language, is a relatively small and simple
object-oriented language designed to be easy to learn for most
non-programmers; most complex systems still require some significant
programming ability to accomplish, however.

</P>
<P>
Having given you enough context to allow you to understand exactly what MOO
code is doing, I now explain what MOO code looks like and what it means.  I
begin with the syntax and semantics of expressions, those pieces of code that
have values.  After that, I cover statements, the next level of structure up
from expressions.  Next, I discuss the concept of a task, the kind of running
process initiated by players entering commands, among other causes.  Finally,
I list all of the built-in functions available to MOO code and describe what
they do.

</P>
<P>
First, though, let me mention comments.  You can include bits of text in your
MOO program that are ignored by the server.  The idea is to allow you to put
in notes to yourself and others about what the code is doing.  To do this,
begin the text of the comment with the two characters <SAMP>`/*'</SAMP> and end it
with the two characters <SAMP>`*/'</SAMP>; this is just like comments in the C
programming language.  Note that the server will completely ignore that text;
it will <EM>not</EM> be saved in the database.  Thus, such comments are only
useful in files of code that you maintain outside the database.

</P>
<P>
To include a more persistent comment in your code, try using a character
string literal as a statement.  For example, the sentence about peanut butter
in the following code is essentially ignored during execution but will be
maintained in the database:

</P>

<PRE>
for x in (players())
  "Grendel eats peanut butter!";
  player:tell(x.name, " (", x, ")");
endfor
</PRE>


<UL>
<LI><A HREF="ProgrammersManual_10.html#SEC10">Expressions</A>: MOO Language Expressions
<LI><A HREF="ProgrammersManual_28.html#SEC28">Statements</A>: MOO Language Statements
<LI><A HREF="ProgrammersManual_38.html#SEC38">Tasks</A>: MOO Tasks
<LI><A HREF="ProgrammersManual_39.html#SEC39">Builtins</A>: Built-in Functions
</UL>

<P><HR><P>
Go to the <A HREF="ProgrammersManual_1.html">first</A>, <A HREF="ProgrammersManual_8.html">previous</A>, <A HREF="ProgrammersManual_10.html">next</A>, <A HREF="ProgrammersManual_77.html">last</A> section, <A HREF="ProgrammersManual_toc.html">table of contents</A>.
</BODY>
</HTML>