lpmoo-1.2/etc/
lpmoo-1.2/mudlib/
lpmoo-1.2/mudlib/etc/
lpmoo-1.2/mudlib/include/
lpmoo-1.2/mudlib/include/moo/
lpmoo-1.2/mudlib/lpc/
lpmoo-1.2/mudlib/std/auto/
lpmoo-1.2/mudlib/std/bfuns/
Message-Id:	<199501270617.BAA03777@tanelorn.ccs.neu.edu>
To:		moo-cows@parc.xerox.com
Subject:	Announcement: LPMOO 1.1.4
Date:		Thu, 26 Jan 1995 22:17:10 -0800
From:		Robert Leslie <rob@ccs.neu.edu>

This is a formal announcement for the release of LPMOO version 1.1.4.

LPMOO is a reimplementation of MOO built on top of a server called DGD. It is
completely compatible with version 1.7.8 of the LambdaMOO server (although
differences do exist -- see below as well as the documentation in the
distribution). DGD is a highly portable, small, efficient network server.

Distinguishing features of LPMOO include:
 - Disk-based operation. Unused MOO objects and verbs are transparently
   swapped out of memory. The swapping rate is configurable.
 - Table and floating point support. (Tables are lists which can be indexed
   by any MOO value, also sometimes called associative arrays, mappings, or
   dictionaries in other languages.)
 - Access to a lower-level language (LPC) that can be used to implement
   new features as needed. For example, LPMOO comes with a filesystem module
   that can be used to implement file access from MOO.
 - Binary checkpoint files. Checkpoints are made quickly and without forking.
   (Support for reading and writing LambdaMOO-format db files is also
   included.)

New in version 1.1.4:
 - Complete network support, including both outbound and custom inbound
   connections. LPMOO supports an extended version of
   open_network_connection() as well as listen() and unlisten() for multiple-
   port listening (MPL). These allow the MOO to directly provide custom
   network services such as http, gopher, finger, et al.
 - Support for sending partial lines of output (prompts), special characters
   (if introduced from LPC), and toggling the telnet ECHO option (for reading
   passwords from clients that understand telnet).
 - Support for invisible connections from "daemon" processes that talk
   directly to LPC objects. (This is used to implement DNS hostname lookups.)
 - Extra math functions for manipulating floating point values.
 - An improved MOO->LPC code generator. Execution of MOO verbs is now much
   more efficient.
 - A greatly simplified installation procedure, and an improved bootstrap
   database loader.

LPMOO has been a personal project of mine for close to a year. It was intended
to demonstrate a new model for MUD implementations, where a sophisticated
layer of abstraction is placed between the server (which should be as general
as possible) and the interface seen by the users and programmers of the MUD.
In this case, MOO is the abstraction layer placed on top of DGD.

LPC has proven to be an efficient implementation language for most purposes,
especially combined with its ability to be compiled into C. The flexibility of
writing custom LPC modules and calling them from MOO programs opens many
opportunities for extending the system and/or writing optimized versions of
critical MOO routines.

I'd very much welcome feedback; you're invited to visit MirrorMOO or send me
email.

You can get LPMOO from the following archive (everything you need is included
in the distribution, except a MOO db):

    ftp.ccs.neu.edu:/pub/mud/servers/lpmoo/*

MirrorMOO, the home of LPMOO, lives at:

    mirror.ccs.neu.edu 8889  (also 9990 for telnet-impaired clients)

-- 
Robert Leslie
rob@ccs.neu.edu