To compile the Common Lisp Object System (CLOS) do the following:
(setf (search-list "pcl:") '("/usr/lisp/pcl/")) (rename-package (find-package "CLOS") "OLD-CLOS") (compile-file "pcl:defsys.lisp") (load "pcl:defsys.fasl") (clos::compile-pcl)
The first line sets up a search list as usual. The second line renames the CLOS package to be the OLD-CLOS package. This is so that the current version of CLOS doesn’t interfere with the compilation process. The third line compiles a file containing some functions for building CLOS. The fourth line loads in the result of the previous compilation. The final line compiles all the CLOS files necessary for a working CLOS system.
The file /usr/lisp/pcl/test.lisp is a file that contains some test functions. To run it through CLOS build a new Lisp and start up a fresh Lisp resulting from the build and do the following:
(in-package 'clos) (compile-file "/usr/lisp/pcl/test.lisp") (load "/usr/lisp/pcl/test.fasl")
This sequence of function calls puts you in the CLOS package, compiles the test file and then loads it. As the test file is loaded, it executes several tests. It will print out a message specifying whether each test passed or failed.
Currently, CLOS is built into the standard core.
This step takes about 30 minutes.