MOO-cows Mailing List Archive


Re: New Server

On Mon, 22 Apr 1996, Jeff Watkins wrote:
> I've been thinking that while the LambdaMOO server is
> incredibly cool, it may be showing its age a bit. I've been
> toying around with creating a server, based very heavily on
> the parser.y file from LambdaMOO distribution.

Its called 'Cold', and has been under development for a while.  The 1.0
version of Cold was released last week.  Full production announcement is
being held off for a moment to let possible last-minute bugs drift in. 
However, the PR notes so far are: 

  * Memory manager pushes inactive objects to disk for a lower memory profile.
    Because of this your memory usage will be relative to how active your
    server is, not how large your database is.  
  * Cooperative multitasking.
  * Floats and other extended data types for ease and speed of programming,  
    including hashed dictionaries (associative lists) and binary data buffers. 
  * Multiple object inheretance built into the integral design of the object
    sytem, not as an after thought.
  * Full multi-port inbound and outbound network socket capability.
  * Full file i/o capability.
  * Secure language design, implementing public, private and native
    methods as well as the ability to lock methods as immutable (so they
    cannot be changed during regular execution) as well as the ability
    to dynamically bind built-in functions to specific objects.
  * The ability to code methods in C and hook them onto an object
    as a Native Method, for speed and extended functionality (such as 
    UDP networking).
  * Backups are restricted only by the speed of your disk (there is no
    decompilation involved--the driver simply syncronizes the database
    on disk and performs a low level copy on the database files--3 to 4
    megabyte databases usually take 1-2 seconds to checkpoint).
  * Optimized byte-code interpreter.
  * Distinction between the role of the interpreter (driver) and the role
    of the database was established early in the designs, leaving virtually
    all database functionality up to the database, with the driver simply
    providing the means to an end.  An example of the variability of a 
    Cold server can be found at:  This  
    server is written entirely in ColdC and dynamically generates the pages 
    as they are needed, pulling the information from an SQL product database
    over a network.
  * Elegant and pleasant Object Oriented language design based off C, no
    pointers or other complex aspects of C are included.  Many language
    influences from MOO and CoolMUD.
  * Non-restrictive copyright.  ColdC and the ColdC interpreter are available
    for commercial and non-commercial use alike.

There is a bunch more, but what it boils down to is the original developer
Greg Hudson took many of the good concepts of MOO and CoolMUD, and others,
along with many of his own ideas (and others :) and implemented the 
original Cold.  I've expanded on it significantly.  More info can be 
found at


-Brandon Gillespie-

Follow-Ups: References:

Home | Subject Index | Thread Index