Ok, I'm probably the only one using `readtable-case' set to :invert .. but just in case, here is a patch with changes I had to do to get latest Slime and CLISP-2.41 to start Slime. It's tested with SBCL-0.9.18.43 also:
cvs diff: Diffing . Index: metering.lisp =================================================================== RCS file: /project/slime/cvsroot/slime/metering.lisp,v retrieving revision 1.4 diff -u -r1.4 metering.lisp --- metering.lisp 1 Apr 2005 20:16:35 -0000 1.4 +++ metering.lisp 26 Nov 2006 17:13:54 -0000 @@ -359,17 +359,17 @@
;;; For CLtL2 compatible lisps
-(defpackage "MONITOR" (:nicknames "MON") (:use "COMMON-LISP") - (:export "*MONITORED-FUNCTIONS*" - "MONITOR" "MONITOR-ALL" "UNMONITOR" "MONITOR-FORM" - "WITH-MONITORING" - "RESET-MONITORING-INFO" "RESET-ALL-MONITORING" - "MONITORED" - "REPORT-MONITORING" - "DISPLAY-MONITORING-RESULTS" - "MONITORING-ENCAPSULATE" "MONITORING-UNENCAPSULATE" - "REPORT")) -(in-package "MONITOR") +(defpackage :monitor (:nicknames :mon) (:use :cl) + (:export :*monitored-functions* + :monitor :monitor-all :unmonitor :monitor-form + :with-monitoring + :reset-monitoring-info :reset-all-monitoring + :monitored + :report-monitoring + :display-monitoring-results + :monitoring-encapsulate :monitoring-unencapsulate + :report)) +(in-package :monitor)
;;; Warn user if they're loading the source instead of compiling it first. (eval-when (eval) @@ -594,16 +594,16 @@ ;;; ******************************** ;;; Global Variables *************** ;;; ******************************** -(defvar *MONITOR-TIME-OVERHEAD* nil +(defvar *monitor-time-overhead* nil "The amount of time an empty monitored function costs.") -(defvar *MONITOR-CONS-OVERHEAD* nil +(defvar *monitor-cons-overhead* nil "The amount of cons an empty monitored function costs.")
-(defvar *TOTAL-TIME* 0 +(defvar *total-time* 0 "Total amount of time monitored so far.") -(defvar *TOTAL-CONS* 0 +(defvar *total-cons* 0 "Total amount of consing monitored so far.") -(defvar *TOTAL-CALLS* 0 +(defvar *total-calls* 0 "Total number of calls monitored so far.") (proclaim '(type time-type *total-time*)) (proclaim '(type consing-type *total-cons*)) @@ -614,7 +614,7 @@ ;;; ******************************** ;;; Perhaps the SYMBOLP should be FBOUNDP? I.e., what about variables ;;; containing closures. -(defmacro PLACE-FUNCTION (function-place) +(defmacro place-function (function-place) "Return the function found at FUNCTION-PLACE. Evals FUNCTION-PLACE if it isn't a symbol, to allow monitoring of closures located in variables/arrays/structures." @@ -628,7 +628,7 @@ (symbol-function ,function-place) (eval ,function-place))))
-(defsetf PLACE-FUNCTION (function-place) (function) +(defsetf place-function (function-place) (function) "Set the function in FUNCTION-PLACE to FUNCTION." (if (fboundp 'fdefinition) ;; If we're conforming to CLtL2, use fdefinition here. @@ -656,7 +656,7 @@ (eval '(setf ,function-place ',function)))) |#
-(defun PLACE-FBOUNDP (function-place) +(defun place-fboundp (function-place) "Test to see if FUNCTION-PLACE is a function." ;; probably should be #|(or (and (symbolp function-place)(fboundp function-place)) @@ -665,7 +665,7 @@ (fboundp function-place) (functionp (place-function function-place))))
-(defun PLACE-MACROP (function-place) +(defun place-macrop (function-place) "Test to see if FUNCTION-PLACE is a macro." (when (symbolp function-place) (macro-function function-place))) @@ -705,7 +705,7 @@ (defsetf get-monitor-info (name) (info) `(setf (gethash ,name *monitor*) ,info))
-(defun MONITORED (function-place) +(defun monitored (function-place) "Test to see if a FUNCTION-PLACE is monitored." (and (place-fboundp function-place) ; this line necessary? (get-monitor-info function-place))) @@ -933,7 +933,7 @@ ;;; ******************************** ;;; Main Monitoring Functions ****** ;;; ******************************** -(defmacro MONITOR (&rest names) +(defmacro monitor (&rest names) "Monitor the named functions. As in TRACE, the names are not evaluated. If a function is already monitored, then unmonitor and remonitor (useful to notice function redefinition). If a name is undefined, give a warning @@ -943,13 +943,13 @@ ,@(mapcar #'(lambda (name) `(monitoring-encapsulate ',name)) names) *monitored-functions*))
-(defmacro UNMONITOR (&rest names) +(defmacro unmonitor (&rest names) "Remove the monitoring on the named functions. Names defaults to the list of all currently monitored functions." `(dolist (name ,(if names `',names '*monitored-functions*) (values)) (monitoring-unencapsulate name)))
-(defun MONITOR-ALL (&optional (package *package*)) +(defun monitor-all (&optional (package *package*)) "Monitor all functions in the specified package." (let ((package (if (packagep package) package @@ -958,7 +958,7 @@ (when (eq (symbol-package symbol) package) (monitoring-encapsulate symbol)))))
-(defmacro MONITOR-FORM (form +(defmacro monitor-form (form &optional (nested :exclusive) (threshold 0.01) (key :percent-time)) "Monitor the execution of all functions in the current package @@ -973,7 +973,7 @@ (report-monitoring :all ,nested ,threshold ,key :ignore-no-calls))) (unmonitor)))
-(defmacro WITH-MONITORING ((&rest functions) +(defmacro with-monitoring ((&rest functions) (&optional (nested :exclusive) (threshold 0.01) (key :percent-time)) @@ -995,12 +995,12 @@ "Number of iterations over which the timing overhead is averaged.")
;;; Perhaps this should return something to frustrate clever compilers. -(defun STUB-FUNCTION (x) +(defun stub-function (x) (declare (ignore x)) nil) (proclaim '(notinline stub-function))
-(defun SET-MONITOR-OVERHEAD () +(defun set-monitor-overhead () "Determines the average overhead of monitoring by monitoring the execution of an empty function many times." (setq *monitor-time-overhead* 0 cvs diff: Diffing doc