anchor.diff:  (cl:in-package #:belletrist)
   
   (defvar *server* nil)
  -(defparameter *current-story* (list "Once upon a time..."))
  +(defparameter *current-story* nil)
   (defvar *users* nil)
  +(defvar *max-message-id* 0)
  +
  +(defstruct user-message id user timestamp message)
  +
  +(defun add-user-message (user message &optional (timestamp (get-universal-time))
  +                         &aux (id (incf *max-message-id*)))
  +  (push (make-user-message :id id :user user :timestamp timestamp :message message)
  +        *current-story*)
  +  id)
  +
  +(defun get-recent-messages (last-message-id)
  +  (member (1+ last-message-id) (reverse *current-story*) :key #'user-message-id))
   
   (defun session-cleanup (session)
     (let ((username (session-value 'username session)))
  
positive.code:           (progn
              (<:p (<:ah "Successfully logged in as " username "."))
              (push username *users*)
              (setf (session-value 'username) username)
              (format t "~&~A logged in.~%" username)
              (redirect "/"))
            (<:div
  
negative.code:       (<:script :src "http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" :type "text/javascript")
        (<:script :type "text/javascript" (<:ai "
  function callback(data) {
    $('#chat-box').append(data);
  };
  
  function addMsg() {
  