-*- mode:Text -*- Copyright 1992 Patrick H. Winston. All rights reserved. Version 1.1, transferred from master disk on 21 Jan 93 This file may reference other files containing copyrighted software. Any restrictions on the use of such software are described in the files containing that software. This file may be freely copied as long as this notice is kept intact. WARNING Remove the code that loads the clos.lsp file from the frames.exp file if your Lisp system includes the Common Lisp Object System. The clos.lsp file contains a micro version of the Common Lisp Object System that may crash your Lisp if your Lisp already has a definition for DEFCLASS, DEFMETHOD, or MAKE-INSTANCE. In particular, if you are using a Symbolics machine, remove the code that loads the clos.lsp file and type the following: (in-package "future-common-lisp-user") PURPOSE Provides program support for Chapter 9, Frames and Inheritance. Illustrates inheritance using dwarfs and earthquakes. PERFORMANCE EXPERIMENT 1 Examine the file frames.exp. Evaluate each Lisp expression in the file one at a time, noting what each does. PERFORMANCE EXPERIMENT 2 Type the following: (show (make-instance 'earthquake)) KNOWLEDGE ENGINEERING EXPERIMENT 1 Editing the class definitions and/or the methods frames.lsp. Note how each edit changes the results. KNOWLEDGE ENGINEERING EXPERIMENT 2 Create a frame system describing weddings and birthday party events. KNOWLEDGE ENGINEERING EXPERIMENT 3 Create a frame system describing the instructors at your university. MEDIUM-SCALE LISP PROJECT Modify clos.lsp such that you can define :around methods. LARGE-SCALE LISP PROJECT Modify clos.lsp such that methods are compiled, not just remembered as LAMBDA expressions.