[cells-cvs] CVS cells

ktilton ktilton at common-lisp.net
Wed Jun 7 22:12:55 UTC 2006


Update of /project/cells/cvsroot/cells
In directory clnet:/tmp/cvs-serv13795

Modified Files:
	cells-manifesto.txt link.lisp md-slot-value.lisp 
Log Message:


--- /project/cells/cvsroot/cells/cells-manifesto.txt	2006/06/06 18:19:11	1.3
+++ /project/cells/cvsroot/cells/cells-manifesto.txt	2006/06/07 22:12:55	1.4
@@ -260,7 +260,14 @@
 deferred until all computed cells are up-to-date with the current state of 
 the universe."
 
--- Peter Seibel, comp.lang.lisp
+Uncommentary
+------------
+-- Peter Seibel, comp.lang.lisp:
 "I couldn't find anything that explained what it was and why I should care."
 
+-- Alan Crowe, comp.lang.lisp:
+"Further confession: I'm bluffing. I've grasped that Cells is
+interesting, but I haven't downloaded it yet, and I haven't
+checked out how it works or what /exactly/ it does."
+
                                 
\ No newline at end of file
--- /project/cells/cvsroot/cells/link.lisp	2006/06/05 00:01:22	1.10
+++ /project/cells/cvsroot/cells/link.lisp	2006/06/07 22:12:55	1.11
@@ -54,7 +54,7 @@
   used)
 
 
-;--- c-unlink-unused --------------------------------
+;--- unlink unused --------------------------------
 
 (defun c-unlink-unused (c &aux (usage (cd-usage c)))
   (when (cd-useds c)
@@ -87,7 +87,6 @@
 
 ; ---------------------------------------------
 
-
 (defun cd-usage-clear-all (c)
   (loop with a = (cd-usage c)
         for bitn below (array-dimension a 0)
--- /project/cells/cvsroot/cells/md-slot-value.lisp	2006/06/05 00:01:22	1.16
+++ /project/cells/cvsroot/cells/md-slot-value.lisp	2006/06/07 22:12:55	1.17
@@ -151,8 +151,12 @@
     (c-setting-debug self slot-name c new-value))
   
   (unless c
-    (c-break "(setf md-slot-value)> cellular slot ~a of ~a cannot be setf unless initialized as inputp"
-      slot-name self))
+    (c-break "cellular slot ~a of ~a cannot be SETFed because it is not 
+mediated by a Cell with :inputp t. To achieve this, the initial value ~s -- whether 
+supplied as an :initform, :default-initarg, or at make-instance time via 
+an :initarg -- should be wrapped in either macro C-IN or C-INPUT. 
+In brief, initialize ~0@*~a to (c-in ~2@*~s) instead of plain ~:*~s"
+      slot-name self (slot-value self slot-name)))
 
   (when *defer-changes*
     (c-break "SETF of ~a must be deferred by wrapping code in WITH-INTEGRITY" c))




More information about the Cells-cvs mailing list