[cells-devel] Re: [cello-devel] Constructor syntax

Kenny Tilton ktilton at nyc.rr.com
Tue May 11 00:08:57 UTC 2004



Thomas F. Burdick wrote:

>Kenny Tilton writes:
>
> > Thomas F. Burdick wrote:
> >
> > >Okay, how are these for a start?
> > >
> > >  (defmacro cv (&optional (value +unbound+))
> > >    `(cells::make-c-variable :value ,value))
> > >  
> > >  (defmacro c-formula ((&rest keys &key lazy cyclic-p cyclic-value) &body forms)
> > >    (declare (ignore lazy cyclic-p cyclic-value))
> > >    `(cells::make-c-dependent :code ',forms :rule (c-lambda , at forms)
> > >                              , at keys))
> > >  
> > >  (defmacro c-variable ((&rest keys &key cyclic-p) &optional (value nil valuep))
> > >    (declare (ignore cyclic-p))
> > >    `(cells::make-c-variable :value ,(if valuep value '+unbound+) , at keys))
> > 
> > looks ok. but...
> > 
> > 1. Is there a definition for +unbound+ missing?
> > 
> > 2. Maybe if I stare at it long enough it will come to me, but why not do 
> > on c-variable what is proposed for cv, viz.,:
> > 
> >       &optional (value '+unbound+)
>
>Hmm, maybe I should have edited these on their way out of my utils
>file.  +unbound+ is from (defconstant +unbound+ '+unbound+), from my
>unbound-cells hack from before.  As for (2), yeah, that would be
>simpler. 
>
 if you want to send me something with these two amendments I will 
manually merge with the Cells I have here, currently a subdirectory of 
Cello, and then future Cello/Cells releases will have that. I guess I am 
still leaning towards that structure, in which Cells can be accessed 
indepenendently but from within the larger Cello context. In fact, maybe 
there is a pattern here: every big huge library can choose one and only 
one big huge parent library which depends crucially on it, and likely 
will have only one plausible candidate parent. Wouldn't that be an 
interesting law of software architecture, if in fact the latter proved 
true? eg, cl-typesetting being a natural container for cl-pdf, and cello 
being a natural for cells.

kt

-- 
Home? http://tilton-technology.com
Cells? http://www.common-lisp.net/project/cells/
Cello? http://www.common-lisp.net/project/cello/
Why Lisp? http://alu.cliki.net/RtL%20Highlight%20Film 
Your Project Here! http://alu.cliki.net/Industry%20Application






More information about the cells-devel mailing list