From 3f4394e0246c029c40eeade98ef0778356bf3238 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 04:03:44 +0000 Subject: [PATCH 01/16] r4272: Auto commit for Debian build --- debian/changelog | 7 +++++++ mop.lisp | 13 ++++++++++++- package.lisp | 3 ++- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 75ff184..67784a9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +cl-hyperobject (2.6.0-1) unstable; urgency=low + + * Add work-around in finalize-subobjects for scl/sbcl/cmucl. + Requires new exported function: process-queued-definitions + + -- Kevin M. Rosenberg Fri, 28 Mar 2003 20:58:01 -0700 + cl-hyperobject (2.5.3-1) unstable; urgency=low * New upstream for SBCL 0.8pre MOP changes diff --git a/mop.lisp b/mop.lisp index 54f6859..b9c8116 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.17 2002/12/26 23:18:16 kevin Exp $ +;;;; $Id: mop.lisp,v 1.18 2003/03/29 04:00:37 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -281,6 +281,14 @@ (setf (slot-value ,the-instance ,the-slot-name) (,reader ,@keys))))) +#+(or sbcl scl cmu) +(defparameter *queued-definitions* nil) +#+(or sbcl scl cmu) +(defun process-queued-definitions () + (dolist (def *queued-definitions*) + (eval def)) + (setq *queued-definitions* nil)) + (defun finalize-subobjects (cl) "Process class subobjects slot" (setf (subobjects cl) @@ -297,6 +305,9 @@ nil (cdr subobj-def))))) (unless (eq (lookup subobject) t) + #+(or sbcl scl cmu) + + #-(or sbcl scl cmu) (eval `(def-lazy-reader ,(name-class subobject) ,(name-slot subobject) ,(lookup subobject) ,@(lookup-keys subobject)))) diff --git a/package.lisp b/package.lisp index e7b9283..42e51ef 100644 --- a/package.lisp +++ b/package.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: package.lisp,v 1.33 2003/03/25 16:04:18 kevin Exp $ +;;;; $Id: package.lisp,v 1.34 2003/03/29 04:00:37 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; ************************************************************************* @@ -35,6 +35,7 @@ #:load-all-subobjects #:view #:fmt-comma-integer + #:processed-queued-definitions )) (defpackage #:hyperobject-user -- 2.34.1 From b2823748750430fbeb14f46d06ec6c1477b31471 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 04:04:21 +0000 Subject: [PATCH 02/16] r4273: *** empty log message *** --- sql.lisp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sql.lisp b/sql.lisp index db98442..a16b6f8 100644 --- a/sql.lisp +++ b/sql.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: sql.lisp,v 1.2 2003/01/17 19:16:28 kevin Exp $ +;;;; $Id: sql.lisp,v 1.3 2003/03/29 04:04:21 kevin Exp $ ;;;; ;;;; This file, part of Hyperobject-SQL, is ;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D. @@ -36,6 +36,9 @@ (define-inverse cl esd)))) ) +(defgeneric sql-name ((cl hyperobject-class)) + ) + (defmethod sql-name ((cl hyperobject-class)) "Return name of SQL table for a class" (let* ((sql-name-slot (slot-value cl 'sql-name)) @@ -151,13 +154,15 @@ SQL name" ;;;; Runtime Commands +(defgeneric sql-create (cl)) (defmethod sql-create (cl) - (with-sql-connection (conn) + (with-sql-connection (conn) (sql-execute (slot-value cl 'create-table-cmd) conn) (dolist (cmd (slot-value cl 'create-indices-cmds)) (sql-execute cmd conn)) (values))) +(defgeneric sql-drop (cl)) (defmethod sql-drop (cl) (mutex-sql-execute (slot-value cl 'drop-table-cmd)) (values)) -- 2.34.1 From 09aedab69b129fc5929a770fab849d6452e1256d Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 04:12:32 +0000 Subject: [PATCH 03/16] r4274: Auto commit for Debian build --- mop.lisp | 5 +++-- sql.lisp | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/mop.lisp b/mop.lisp index b9c8116..0208286 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.18 2003/03/29 04:00:37 kevin Exp $ +;;;; $Id: mop.lisp,v 1.19 2003/03/29 04:06:29 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -283,8 +283,9 @@ #+(or sbcl scl cmu) (defparameter *queued-definitions* nil) -#+(or sbcl scl cmu) + (defun process-queued-definitions () + #+(or sbcl scl cmu) (dolist (def *queued-definitions*) (eval def)) (setq *queued-definitions* nil)) diff --git a/sql.lisp b/sql.lisp index a16b6f8..e4faaa0 100644 --- a/sql.lisp +++ b/sql.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: sql.lisp,v 1.3 2003/03/29 04:04:21 kevin Exp $ +;;;; $Id: sql.lisp,v 1.4 2003/03/29 04:10:44 kevin Exp $ ;;;; ;;;; This file, part of Hyperobject-SQL, is ;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D. @@ -36,7 +36,7 @@ (define-inverse cl esd)))) ) -(defgeneric sql-name ((cl hyperobject-class)) +(defgeneric sql-name (cl) ) (defmethod sql-name ((cl hyperobject-class)) -- 2.34.1 From ae806c523aa7162f356b95ba8826e393ab55e420 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 04:20:19 +0000 Subject: [PATCH 04/16] r4275: Auto commit for Debian build --- mop.lisp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/mop.lisp b/mop.lisp index 0208286..49dd87d 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.19 2003/03/29 04:06:29 kevin Exp $ +;;;; $Id: mop.lisp,v 1.20 2003/03/29 04:20:19 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -286,9 +286,10 @@ (defun process-queued-definitions () #+(or sbcl scl cmu) - (dolist (def *queued-definitions*) - (eval def)) - (setq *queued-definitions* nil)) + (progn + (dolist (def *queued-definitions*) + (eval def)) + (setq *queued-definitions* nil))) (defun finalize-subobjects (cl) "Process class subobjects slot" @@ -307,7 +308,10 @@ (cdr subobj-def))))) (unless (eq (lookup subobject) t) #+(or sbcl scl cmu) - + (push `(def-lazy-reader ,(name-class subobject) + ,(name-slot subobject) ,(lookup subobject) + ,@(lookup-keys subobject)) + *queued-definitions*) #-(or sbcl scl cmu) (eval `(def-lazy-reader ,(name-class subobject) ,(name-slot subobject) ,(lookup subobject) -- 2.34.1 From 509f5717bbb67f567741531ca7f2b34a9f8939f9 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 07:09:41 +0000 Subject: [PATCH 05/16] r4278: Auto commit for Debian build --- mop.lisp | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/mop.lisp b/mop.lisp index 49dd87d..f402874 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.20 2003/03/29 04:20:19 kevin Exp $ +;;;; $Id: mop.lisp,v 1.21 2003/03/29 07:09:41 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -281,15 +281,28 @@ (setf (slot-value ,the-instance ,the-slot-name) (,reader ,@keys))))) -#+(or sbcl scl cmu) -(defparameter *queued-definitions* nil) + +(defparameter *queued-definitions-pathname* + (make-pathname :directory '(:absolute "tmp") + :name (format nil "hyperobject-def-~d" (get-universal-time)) + :type "lisp")) +(defparameter *queued-definitions-stream* nil) + +(defun add-definition (def) + (unless *queued-definitions-stream* + (setq *queued-definitions-stream* (open *queued-definitions-pathname* + :direction :output + :if-exists :supersede))) + (format *queued-definitions-stream* "~A~%" def)) (defun process-queued-definitions () - #+(or sbcl scl cmu) - (progn - (dolist (def *queued-definitions*) - (eval def)) - (setq *queued-definitions* nil))) + (when *queued-definitions-stream* + (close *queued-definitions-stream*) + (compile-file *queued-definitions-pathname*) + (load (compile-file-pathname *queued-definitions-pathname*)) + (delete-file *queued-definitions-pathname*) + (delete-file (compile-file-pathname *queued-definitions-pathname*)) + (setq *queued-definitions-stream* nil))) (defun finalize-subobjects (cl) "Process class subobjects slot" @@ -307,15 +320,10 @@ nil (cdr subobj-def))))) (unless (eq (lookup subobject) t) - #+(or sbcl scl cmu) - (push `(def-lazy-reader ,(name-class subobject) - ,(name-slot subobject) ,(lookup subobject) - ,@(lookup-keys subobject)) - *queued-definitions*) - #-(or sbcl scl cmu) - (eval `(def-lazy-reader ,(name-class subobject) - ,(name-slot subobject) ,(lookup subobject) - ,@(lookup-keys subobject)))) + (add-definition + `(def-lazy-reader ,(name-class subobject) + ,(name-slot subobject) ,(lookup subobject) + ,@(lookup-keys subobject)))) (push subobject subobjects)))) subobjects))) -- 2.34.1 From 94301d812a0e096b96568a267414a759c0ca1a28 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 07:12:10 +0000 Subject: [PATCH 06/16] r4279: Auto commit for Debian build --- mop.lisp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mop.lisp b/mop.lisp index f402874..788df53 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.21 2003/03/29 07:09:41 kevin Exp $ +;;;; $Id: mop.lisp,v 1.22 2003/03/29 07:12:10 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -300,8 +300,8 @@ (close *queued-definitions-stream*) (compile-file *queued-definitions-pathname*) (load (compile-file-pathname *queued-definitions-pathname*)) - (delete-file *queued-definitions-pathname*) - (delete-file (compile-file-pathname *queued-definitions-pathname*)) +;; (delete-file *queued-definitions-pathname*) +;; (delete-file (compile-file-pathname *queued-definitions-pathname*)) (setq *queued-definitions-stream* nil))) (defun finalize-subobjects (cl) -- 2.34.1 From 76eab2690449f19f15b223399ed0f3738d5fac2e Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 07:17:47 +0000 Subject: [PATCH 07/16] r4280: Auto commit for Debian build --- mop.lisp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mop.lisp b/mop.lisp index 788df53..5a42585 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.22 2003/03/29 07:12:10 kevin Exp $ +;;;; $Id: mop.lisp,v 1.23 2003/03/29 07:17:47 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -292,7 +292,8 @@ (unless *queued-definitions-stream* (setq *queued-definitions-stream* (open *queued-definitions-pathname* :direction :output - :if-exists :supersede))) + :if-exists :supersede)) + (format *queued-definitions-stream* "(in-package #:hyperobject)~%")) (format *queued-definitions-stream* "~A~%" def)) (defun process-queued-definitions () -- 2.34.1 From 1cfeecff23fb7fd5a3ae7c6e2f049e943bfbc3ba Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 07:32:50 +0000 Subject: [PATCH 08/16] r4281: Auto commit for Debian build --- mop.lisp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/mop.lisp b/mop.lisp index 5a42585..c30c8c6 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.23 2003/03/29 07:17:47 kevin Exp $ +;;;; $Id: mop.lisp,v 1.24 2003/03/29 07:32:50 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -292,9 +292,8 @@ (unless *queued-definitions-stream* (setq *queued-definitions-stream* (open *queued-definitions-pathname* :direction :output - :if-exists :supersede)) - (format *queued-definitions-stream* "(in-package #:hyperobject)~%")) - (format *queued-definitions-stream* "~A~%" def)) + :if-exists :supersede))) + (format *queued-definitions-stream* "~W~%" def)) (defun process-queued-definitions () (when *queued-definitions-stream* @@ -322,7 +321,7 @@ (cdr subobj-def))))) (unless (eq (lookup subobject) t) (add-definition - `(def-lazy-reader ,(name-class subobject) + `(hyperobject::def-lazy-reader ,(name-class subobject) ,(name-slot subobject) ,(lookup subobject) ,@(lookup-keys subobject)))) (push subobject subobjects)))) -- 2.34.1 From 8c8becc1f2f7d122ec5298bf6a9d540e3cdd6d47 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 07:42:22 +0000 Subject: [PATCH 09/16] r4282: Auto commit for Debian build --- mop.lisp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mop.lisp b/mop.lisp index c30c8c6..e7a24c5 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.24 2003/03/29 07:32:50 kevin Exp $ +;;;; $Id: mop.lisp,v 1.25 2003/03/29 07:42:22 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -298,11 +298,12 @@ (defun process-queued-definitions () (when *queued-definitions-stream* (close *queued-definitions-stream*) + (setq *queued-definitions-stream* nil) (compile-file *queued-definitions-pathname*) (load (compile-file-pathname *queued-definitions-pathname*)) -;; (delete-file *queued-definitions-pathname*) -;; (delete-file (compile-file-pathname *queued-definitions-pathname*)) - (setq *queued-definitions-stream* nil))) + ;; (delete-file *queued-definitions-pathname*) + ;; (delete-file (compile-file-pathname *queued-definitions-pathname*)) + )) (defun finalize-subobjects (cl) "Process class subobjects slot" -- 2.34.1 From 3e5379739ac86e30f191961b15dd69f3516bf0f0 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 13:57:07 +0000 Subject: [PATCH 10/16] r4283: Auto commit for Debian build --- mop.lisp | 28 ++-------------------------- 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/mop.lisp b/mop.lisp index e7a24c5..03cb099 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.25 2003/03/29 07:42:22 kevin Exp $ +;;;; $Id: mop.lisp,v 1.26 2003/03/29 13:57:07 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -281,30 +281,6 @@ (setf (slot-value ,the-instance ,the-slot-name) (,reader ,@keys))))) - -(defparameter *queued-definitions-pathname* - (make-pathname :directory '(:absolute "tmp") - :name (format nil "hyperobject-def-~d" (get-universal-time)) - :type "lisp")) -(defparameter *queued-definitions-stream* nil) - -(defun add-definition (def) - (unless *queued-definitions-stream* - (setq *queued-definitions-stream* (open *queued-definitions-pathname* - :direction :output - :if-exists :supersede))) - (format *queued-definitions-stream* "~W~%" def)) - -(defun process-queued-definitions () - (when *queued-definitions-stream* - (close *queued-definitions-stream*) - (setq *queued-definitions-stream* nil) - (compile-file *queued-definitions-pathname*) - (load (compile-file-pathname *queued-definitions-pathname*)) - ;; (delete-file *queued-definitions-pathname*) - ;; (delete-file (compile-file-pathname *queued-definitions-pathname*)) - )) - (defun finalize-subobjects (cl) "Process class subobjects slot" (setf (subobjects cl) @@ -321,7 +297,7 @@ nil (cdr subobj-def))))) (unless (eq (lookup subobject) t) - (add-definition + (eval `(hyperobject::def-lazy-reader ,(name-class subobject) ,(name-slot subobject) ,(lookup subobject) ,@(lookup-keys subobject)))) -- 2.34.1 From 224c382d0d7fa09a5c86bfb1a8479ac380a094c6 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:11:09 +0000 Subject: [PATCH 11/16] r4284: Auto commit for Debian build --- mop.lisp | 32 ++++++++++++++++++++++++++++++-- package.lisp | 25 ++++++++++++++++++------- 2 files changed, 48 insertions(+), 9 deletions(-) diff --git a/mop.lisp b/mop.lisp index 03cb099..0002d56 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.26 2003/03/29 13:57:07 kevin Exp $ +;;;; $Id: mop.lisp,v 1.27 2003/03/29 20:11:09 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -281,6 +281,29 @@ (setf (slot-value ,the-instance ,the-slot-name) (,reader ,@keys))))) +#+(or sbcl scl cmu) +(defun ensure-lazy-reader (class slot-name reader &rest reader-keys) + (let ((keys nil) + (gf (ensure-generic-function 'slot-unbound))) + (dolist (key reader-keys) + (push (list 'slot-value 'the-instance (list 'quote key)) keys)) + (setq keys (nreverse keys)) + (multiple-value-bind (method-lambda init-args-values) + (make-method-lambda + gf + (class-prototype (generic-function-method-class gf)) + `(lambda (the-class the-instance the-slot-name) + (declare (ignore the-class)) + (setf (slot-value the-instance the-slot-name) (,reader ,@keys)))) + (print init-args-values) + (add-method gf + (make-instance (generic-function-method-class gf) + ':specializers (list t class (intern-eql-specializer slot-name)) + ':lambda-list '(the-class the-instance the-slot-name) + ':function `(function ,method-lambda) + ;;init-args-values + ))))) + (defun finalize-subobjects (cl) "Process class subobjects slot" (setf (subobjects cl) @@ -297,10 +320,15 @@ nil (cdr subobj-def))))) (unless (eq (lookup subobject) t) + #-(or sbcl cmu scl) (eval `(hyperobject::def-lazy-reader ,(name-class subobject) ,(name-slot subobject) ,(lookup subobject) - ,@(lookup-keys subobject)))) + ,@(lookup-keys subobject))) + #+(or sbcl cmu scl) + (apply #'ensure-lazy-reader + (name-class subobject) (name-slot subobject) (lookup subobject) (lookup-keys subobject)) + ) (push subobject subobjects)))) subobjects))) diff --git a/package.lisp b/package.lisp index 42e51ef..b567852 100644 --- a/package.lisp +++ b/package.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: package.lisp,v 1.34 2003/03/29 04:00:37 kevin Exp $ +;;;; $Id: package.lisp,v 1.35 2003/03/29 20:11:09 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; ************************************************************************* @@ -50,17 +50,21 @@ mop::standard-direct-slot-definition mop::standard-effective-slot-definition mop:direct-slot-definition-class mop:compute-effective-slot-definition excl::compute-effective-slot-definition-initargs - mop:slot-value-using-class) + mop:slot-value-using-class + mop:class-prototype mop:generic-function-method-class mop:intern-eql-specializer + mop:make-method-lambda) #+lispworks '(clos:class-slots clos::slot-definition-name clos:finalize-inheritance clos::standard-direct-slot-definition clos::standard-effective-slot-definition clos:direct-slot-definition-class clos:compute-effective-slot-definition clos::compute-effective-slot-definition-initargs - clos:slot-value-using-class) + clos:slot-value-using-class clos:make-method-lambda) #+kmr-sbcl-mop '(sb-pcl::standard-direct-slot-definition sb-pcl::standard-effective-slot-definition - sb-pcl::compute-effective-slot-definition-initargs) + sb-pcl::compute-effective-slot-definition-initargs + ;sb-pcl:class-prototype sb-pcl:generic-function-method-class sb-pcl:intern-eql-specializer + ) #+kmr-sbcl-pcl '(sb-pcl:class-of sb-pcl:class-name sb-pcl:class-slots sb-pcl:find-class sb-pcl::standard-class @@ -69,7 +73,9 @@ sb-pcl::standard-effective-slot-definition sb-pcl::validate-superclass sb-pcl::direct-slot-definition-class sb-pcl::compute-effective-slot-definition sb-pcl::compute-effective-slot-definition-initargs - sb-pcl::slot-value-using-class) + sb-pcl::slot-value-using-class + sb-pcl:class-prototype sb-pcl:generic-function-method-class sb-pcl:intern-eql-specializer + sb-pcl:make-method-lambda) #+cmu '(pcl:class-of pcl:class-name pcl:class-slots pcl:find-class pcl::standard-class pcl::slot-definition-name pcl:finalize-inheritance @@ -77,7 +83,9 @@ pcl::validate-superclass pcl:direct-slot-definition-class pcl:compute-effective-slot-definition pcl::compute-effective-slot-definition-initargs - pcl::slot-value-using-class) + pcl::slot-value-using-class + pcl:class-prototype pcl:generic-function-method-class pcl:intern-eql-specializer + pcl:make-method-lambda) #+scl '(clos:class-slots clos::standard-class clos::slot-definition-name clos:finalize-inheritance @@ -85,7 +93,9 @@ clos::validate-superclass clos:direct-slot-definition-class clos:compute-effective-slot-definition clos::compute-effective-slot-definition-initargs - clos::slot-value-using-class) + clos::slot-value-using-class + clos:class-prototype clos:generic-function-method-class + clos:intern-eql-specializer clos:make-method-lambda) :hyperobject)) @@ -95,3 +105,4 @@ (setq cl:*features* (delete :kmr-sbcl-mop cl:*features*)) (setq cl:*features* (delete :kmr-sbcl-pcl cl:*features*)))) + -- 2.34.1 From 33a2ae6b1cc9dfacb1412b63016c15adabaa51f3 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:12:50 +0000 Subject: [PATCH 12/16] r4285: Auto commit for Debian build --- package.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.lisp b/package.lisp index b567852..96fd8da 100644 --- a/package.lisp +++ b/package.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: package.lisp,v 1.35 2003/03/29 20:11:09 kevin Exp $ +;;;; $Id: package.lisp,v 1.36 2003/03/29 20:12:03 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; ************************************************************************* @@ -94,7 +94,7 @@ clos:compute-effective-slot-definition clos::compute-effective-slot-definition-initargs clos::slot-value-using-class - clos:class-prototype clos:generic-function-method-class + clos::class-prototype clos:generic-function-method-class clos:intern-eql-specializer clos:make-method-lambda) :hyperobject)) -- 2.34.1 From 5fe53d4fd03d9339c06850dd54dcbcae10b3678e Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:22:37 +0000 Subject: [PATCH 13/16] r4286: Auto commit for Debian build --- mop.lisp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/mop.lisp b/mop.lisp index 0002d56..6130315 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.27 2003/03/29 20:11:09 kevin Exp $ +;;;; $Id: mop.lisp,v 1.28 2003/03/29 20:22:37 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -294,15 +294,15 @@ (class-prototype (generic-function-method-class gf)) `(lambda (the-class the-instance the-slot-name) (declare (ignore the-class)) - (setf (slot-value the-instance the-slot-name) (,reader ,@keys)))) - (print init-args-values) + (setf (slot-value the-instance the-slot-name) (,reader ,@keys))) + nil) (add-method gf - (make-instance (generic-function-method-class gf) - ':specializers (list t class (intern-eql-specializer slot-name)) - ':lambda-list '(the-class the-instance the-slot-name) - ':function `(function ,method-lambda) - ;;init-args-values - ))))) + (apply + #'make-instance (generic-function-method-class gf) + ':specializers (list t class (intern-eql-specializer slot-name)) + ':lambda-list '(the-class the-instance the-slot-name) + ':function `(function ,method-lambda) + init-args-values))))) (defun finalize-subobjects (cl) "Process class subobjects slot" -- 2.34.1 From 962a9b69315aaa22c831c9e29230d315b5d0b9b7 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:29:10 +0000 Subject: [PATCH 14/16] r4287: Auto commit for Debian build --- mop.lisp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/mop.lisp b/mop.lisp index 6130315..48b0f05 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.28 2003/03/29 20:22:37 kevin Exp $ +;;;; $Id: mop.lisp,v 1.29 2003/03/29 20:29:10 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -282,7 +282,7 @@ (,reader ,@keys))))) #+(or sbcl scl cmu) -(defun ensure-lazy-reader (class slot-name reader &rest reader-keys) +(defun ensure-lazy-reader (class-name slot-name reader &rest reader-keys) (let ((keys nil) (gf (ensure-generic-function 'slot-unbound))) (dolist (key reader-keys) @@ -299,7 +299,9 @@ (add-method gf (apply #'make-instance (generic-function-method-class gf) - ':specializers (list t class (intern-eql-specializer slot-name)) + ':specializers (list (intern-eql-specializer class-name) + (find-class class-name) + (intern-eql-specializer slot-name)) ':lambda-list '(the-class the-instance the-slot-name) ':function `(function ,method-lambda) init-args-values))))) -- 2.34.1 From e247c616f76b76e8171a6c62484ed849977cf981 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:31:45 +0000 Subject: [PATCH 15/16] r4288: Auto commit for Debian build --- mop.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mop.lisp b/mop.lisp index 48b0f05..b18672c 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.29 2003/03/29 20:29:10 kevin Exp $ +;;;; $Id: mop.lisp,v 1.30 2003/03/29 20:31:45 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -303,7 +303,7 @@ (find-class class-name) (intern-eql-specializer slot-name)) ':lambda-list '(the-class the-instance the-slot-name) - ':function `(function ,method-lambda) + ':function method-lambda init-args-values))))) (defun finalize-subobjects (cl) -- 2.34.1 From 4d2fa03e3e02b41c8aeb10971bde21d263ee3ffb Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sat, 29 Mar 2003 20:41:04 +0000 Subject: [PATCH 16/16] r4289: Auto commit for Debian build --- mop.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mop.lisp b/mop.lisp index b18672c..d607bb1 100644 --- a/mop.lisp +++ b/mop.lisp @@ -11,7 +11,7 @@ ;;;; in Text, HTML, and XML formats. This includes hyperlinking ;;;; capability and sub-objects. ;;;; -;;;; $Id: mop.lisp,v 1.30 2003/03/29 20:31:45 kevin Exp $ +;;;; $Id: mop.lisp,v 1.31 2003/03/29 20:41:04 kevin Exp $ ;;;; ;;;; This file is Copyright (c) 2000-2002 by Kevin M. Rosenberg ;;;; @@ -303,7 +303,7 @@ (find-class class-name) (intern-eql-specializer slot-name)) ':lambda-list '(the-class the-instance the-slot-name) - ':function method-lambda + ':function (eval `(function ,method-lambda)) init-args-values))))) (defun finalize-subobjects (cl) -- 2.34.1