(defclass PP-TEST (is-a USER)
   (multislot x)
   (slot y))
(ppdefclass)
(ppdefclass USER)
(ppdefclass BOGUS)
(ppdefclass PP-TEST)
(list-defclasses)
(defclass TEST (is-a USER) (role concrete))
(defclass ANOTHER-TEST (is-a TEST))
(defclass * (is-a OBJECT))
(undefclass BOGUS)
(undefclass *)
(undefclass OBJECT)
(undefclass USER)
(undefclass PRIMITIVE)
(undefclass MULTIFIELD)
(undefclass EXTERNAL-ADDRESS)
(undefclass NUMBER)
(undefclass LEXEME)
(undefclass INTEGER)
(undefclass FLOAT)
(undefclass SYMBOL)
(undefclass STRING)
(make-instance t of TEST)
(undefclass TEST)
(unmake-instance *)
(defmethod foo ((?a TEST)))
(undefclass TEST)
(undefgeneric foo)
(undefclass TEST)
(list-defclasses)
(undefclass *)
(list-defclasses)
(defclass CHILD (is-a USER) (role abstract)
  (slot age (create-accessor ?NONE))
  (slot sex (access read-only)
            (storage shared)
            (create-accessor ?NONE)))
(defclass BOY (is-a CHILD)
   (role concrete)
   (slot sex (source composite)
             (default male)
             (create-accessor ?NONE)))
(defmessage-handler BOY play ()
   (printout t "The boy is now playing..." crlf))
(describe-class CHILD)
(describe-class BOY)
(defclass a (is-a USER))
(defclass b (is-a USER))
(defclass c (is-a a b))
(defclass d (is-a USER))
(defclass e (is-a c d))
(defclass f (is-a e))
(browse-classes)
(browse-classes a)
(browse-classes BOGUS)
(browse-classes 34)
(ppdefmessage-handler)
(ppdefmessage-handler bogus)
(ppdefmessage-handler bogus bogus)
(ppdefmessage-handler USER bogus)
(ppdefmessage-handler bogus init)
(ppdefmessage-handler USER init)
(ppdefmessage-handler BOY play)
(ppdefmessage-handler BOY play primary)
(ppdefmessage-handler USER init around)
(ppdefmessage-handler USER init before)
(ppdefmessage-handler USER init after)
(defmessage-handler BOY init after ())
(list-defmessage-handlers)
(list-defmessage-handlers *)
(defclass * (is-a USER))
(list-defmessage-handlers)
(undefclass *)
(list-defmessage-handlers USER)
(defmessage-handler USER * ())
(defmessage-handler USER bogus ())
(list-defmessage-handlers USER)
(undefmessage-handler USER *)
(list-defmessage-handlers USER)
(undefmessage-handler)
(undefmessage-handler * *)
(list-defmessage-handlers)
(undefmessage-handler * * *)
(list-defmessage-handlers)
(clear)
(defmessage-handler USER my-message around ())
(defmessage-handler USER my-message before ())
(defmessage-handler USER my-message ())
(defmessage-handler USER my-message after ())
(defmessage-handler OBJECT my-message around ())
(defmessage-handler OBJECT my-message before ())
(defmessage-handler OBJECT my-message primary ())
(defmessage-handler OBJECT my-message after ())
(preview-send)
(preview-send BOGUS blah)
(preview-send USER blah)
(preview-send USER my-message)
(preview-send OBJECT my-message)
(clear)
(defclass TEST (is-a USER) (role concrete)
   (slot x (create-accessor write)) 
   (multislot y (default ?NONE) (create-accessor write))
   (slot z (create-accessor write)))
(definstances TEST-CASES "Random comment..."
   (t1 of TEST (x 100) (y a b c d e f))
   (t2 of TEST (y blah)))
(ppdefinstances)
(ppdefinstances BOGUS)
(ppdefinstances 34)
(ppdefinstances TEST-CASES)
(list-definstances)
(reset)
(instances)
(instances MAIN TEST)
(instances MAIN USER)
(instances MAIN USER inherit)
(instances MAIN BOGUS)
(instances MAIN USER junk)
(send [t1] print)
(defmessage-handler TEST print ()
   (printout t "Printing twice..." crlf)
   (ppinstance)
   (call-next-handler)
   (printout t "Done!" crlf))
(send [t2] print)
(undefinstances)
(definstances * (t3 of TEST))
(undefinstances *)
(list-definstances)
(undefinstances *)
(list-definstances)
(load-instances)
(load-instances 34)
(load-instances "coolcmd.bat")
(save-instances)
(save-instances 34)
(send [t2] put-z (instance-address t1))
(mv-slot-replace t1 y 2 2 (instance-address t2))
(save-instances "Actual//coolcmd2.out")
(reset)
(load-instances "Actual//coolcmd2.out")
(restore-instances "Actual//coolcmd2.out")
(do-for-all-instances ((?a OBJECT)) TRUE (send ?a print))
