anchor.diff:             (defun ,name ,lambda-list ,@body))))
   
   (defajax add-message (msg)
  -  (push msg *current-story*)
  -  (format t "~&~A entered a new message: ~S~%" (session-value 'username) msg)
  +  (add-user-message (session-value 'username) msg)
     (update-chat))
   
   (defajax update-chat ()
  -  (with-yaclml-output-to-string
  -    (mapc (lambda (message)
  -            (<:p (<:ai message)))
  -          (reverse *current-story*))))
  +  (prog1
  +      (with-yaclml-output-to-string
  +        (mapc (lambda (message)
  +                (<:p (<:ai (user-message-user message) " sez: " (user-message-message message))))
  +              (get-recent-messages (session-value 'last-message-id))))
  +    (setf (session-value 'last-message-id) *max-message-id*)))
  
positive.code: (cl:in-package #:belletrist)
  
  (defvar *server* nil)
  (defparameter *current-story* (list "Once upon a time..."))
  (defvar *users* nil)
  
  (defun session-cleanup (session)
    (let ((username (session-value 'username session)))
  
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() {
  