r9468: add sockets for openmcl
[kmrcl.git] / functions.lisp
index 3bc09bcd8fe6d2bddb3356ab7ba73fca6bd995af..80f22211aa19474edc12e43f0530fce76b854dd6 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
-;;;; $Id: functions.lisp,v 1.2 2003/05/16 12:55:15 kevin Exp $
+;;;; $Id$
 ;;;;
 ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
 
 (in-package :kmrcl)
 
-(defun memo-proc (fn &optional (test 'equal))
+(defun memo-proc (fn)
   "Memoize results of call to fn, returns a closure with hash-table"
-  (let ((cache (make-hash-table :test test)))
+  (let ((cache (make-hash-table :test #'equal)))
     #'(lambda (&rest args)
         (multiple-value-bind (val foundp) (gethash args cache)
           (if foundp
               val
            (setf (gethash args cache) (apply fn args)))))))
 
-(defun memoize (fn-name &optional (test 'equal))
-  (setf (fdefinition fn-name) (memo-proc (fdefinition fn-name) test)))
+(defun memoize (fn-name)
+  (setf (fdefinition fn-name) (memo-proc (fdefinition fn-name))))
 
 (defmacro defun-memo (fn args &body body)
   "Define a memoized function"