From: <cli...@li...> - 2006-11-22 20:03:34
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/doc cl-ent.xml,1.109,1.110 (Sam Steingold) 2. clisp/doc mop.xml,2.70,2.71 (Sam Steingold) 3. clisp/doc impbody.xml,1.450,1.451 (Sam Steingold) 4. clisp/src exporting.lisp, 1.16, 1.17 defstruct.lisp, 1.74, 1.75 NEWS, 1.355, 1.356 ChangeLog, 1.5459, 1.5460 (Sam Steingold) 5. clisp/doc impbody.xml,1.451,1.452 (Sam Steingold) ---------------------------------------------------------------------- Message: 1 Date: Wed, 22 Nov 2006 01:18:42 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/doc cl-ent.xml,1.109,1.110 To: cli...@li... Message-ID: <E1G...@ma...> Update of /cvsroot/clisp/clisp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv12679/doc Modified Files: cl-ent.xml Log Message: (ascii): fixed link Index: cl-ent.xml =================================================================== RCS file: /cvsroot/clisp/clisp/doc/cl-ent.xml,v retrieving revision 1.109 retrieving revision 1.110 diff -u -d -r1.109 -r1.110 --- cl-ent.xml 18 Oct 2006 04:11:13 -0000 1.109 +++ cl-ent.xml 22 Nov 2006 01:18:40 -0000 1.110 @@ -138,7 +138,7 @@ <!-- *** platforms *** --> <!ENTITY acorn '<ulink url="http://www.acorn.com/"><emphasis role="platform">Acorn</emphasis></ulink>'> <!ENTITY amiga '<ulink url="http://www.amiga.org/"><emphasis role="platform">Amiga</emphasis></ulink>'> -<!ENTITY ascii '<ulink url="http://www.cplusplus.com/doc/papers/ascii.html"><emphasis role="platform">ASCII</emphasis></ulink>'> +<!ENTITY ascii '<ulink url="http://en.wikipedia.org/wiki/ASCII"><emphasis role="platform">ASCII</emphasis></ulink>'> <!ENTITY atari '<ulink url="http://www.atari.org/"><emphasis role="platform">Atari</emphasis></ulink>'> <!ENTITY beos '<ulink url="http://www.bebits.com/app/2680"><emphasis role="platform">BeOS</emphasis></ulink>'> <!ENTITY cygwin '<ulink url="http://cygwin.com/"><emphasis role="platform">Cygwin</emphasis></ulink>'> ------------------------------ Message: 2 Date: Wed, 22 Nov 2006 01:19:07 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/doc mop.xml,2.70,2.71 To: cli...@li... Message-ID: <E1G...@ma...> Update of /cvsroot/clisp/clisp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv12955/doc Modified Files: mop.xml Log Message: fixed id spelling Index: mop.xml =================================================================== RCS file: /cvsroot/clisp/clisp/doc/mop.xml,v retrieving revision 2.70 retrieving revision 2.71 diff -u -d -r2.70 -r2.71 --- mop.xml 10 Nov 2006 02:26:15 -0000 2.70 +++ mop.xml 22 Nov 2006 01:19:05 -0000 2.71 @@ -795,7 +795,7 @@ <listitem><simpara><xref linkend="mop-cl-reinit-mo"/></simpara></listitem> <listitem><simpara><xref linkend="mop-gf-init-mo"/></simpara></listitem> <listitem><simpara><xref linkend="mop-cl-finalization"/></simpara></listitem> -<listitem><simpara><xref linkend="mop-sa-instance-stuct"/></simpara></listitem> +<listitem><simpara><xref linkend="mop-sa-instance-struct"/></simpara></listitem> <listitem><simpara><xref linkend="mop-sa-funcallable"/></simpara></listitem> <listitem><simpara><xref linkend="mop-gf-invocation"/></simpara></listitem> <listitem><simpara><xref linkend="mop-dep-maint"/></simpara></listitem> @@ -2051,7 +2051,7 @@ definition is set. This is done by specified around-methods; portable methods cannot take over this behavior. For more information on the slot definition locations, - see <xref linkend="mop-sa-instance-stuct"/>.</simpara> + see <xref linkend="mop-sa-instance-struct"/>.</simpara> &result-immutable;</listitem></varlistentry></variablelist> <variablelist><title>Methods</title> @@ -2475,7 +2475,7 @@ <subtitle><code>(&slotdef-location; &esd-r;)</code></subtitle> <para>Returns the location of &esd-r;. The meaning and interpretation - of this value is described in <xref linkend="mop-sa-instance-stuct"/>.</para> + of this value is described in <xref linkend="mop-sa-instance-struct"/>.</para> <variablelist> <varlistentry><term><literal role="method">(&slotdef-location; @@ -4679,7 +4679,7 @@ <section id="mop-slot-access"><title>Slot Access</title> -<section id="mop-sa-instance-stuct"> +<section id="mop-sa-instance-struct"> <title>Instance Structure Protocol</title> <para>The instance structure protocol is responsible for implementing @@ -4694,7 +4694,7 @@ include one additional value, the class of the &object-r; argument, which always immediately precedes the &object-r; argument.</para> -<table id="mop-sa-instance-stuct-table"> +<table id="mop-sa-instance-struct-table"> <title>The correspondence between slot access function and underlying slot access generic function</title> <tgroup cols="2" colsep="1" rowsep="1" align="center"> @@ -4805,7 +4805,7 @@ source program, but rather would be generated by a meta-level analysis program run during the process of compiling the source program. </para></informalexample> -</section><!-- mop-sa-instance-stuct --> +</section><!-- mop-sa-instance-struct --> <section id="mop-sa-funcallable"><title>Funcallable Instances</title> @@ -5475,7 +5475,8 @@ <listitem><para>The &mop; is applicable to classes of type &structure-class;. The default superclass for &structure-class; instances is &structure-object-t;. Structure classes do not support multiple inheritance and reinitialization. - See <xref linkend="mop-cl-init-mo"/>.</para></listitem> + See <xref linkend="mop-cl-init-mo"/>. + See also <xref linkend="defstruct-mop"/>.</para></listitem> <listitem><para>The &defgeneric; macro supports user-defined options. See <xref linkend="mop-defgeneric-user-options"/>.</para></listitem> <listitem><para>The class &method-t; is subclassable. ------------------------------ Message: 3 Date: Wed, 22 Nov 2006 01:30:57 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/doc impbody.xml,1.450,1.451 To: cli...@li... Message-ID: <E1G...@ma...> Update of /cvsroot/clisp/clisp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17119/doc Modified Files: impbody.xml Log Message: export structure MOP Index: impbody.xml =================================================================== RCS file: /cvsroot/clisp/clisp/doc/impbody.xml,v retrieving revision 1.450 retrieving revision 1.451 diff -u -d -r1.450 -r1.451 --- impbody.xml 11 Nov 2006 03:34:44 -0000 1.450 +++ impbody.xml 22 Nov 2006 01:30:55 -0000 1.451 @@ -1003,6 +1003,11 @@ <chapter id="structures"><title>Structures <ulink url="&clhs;/Body/chap-8.html">[CLHS-8]</ulink></title> +<section id="defstruct-options"><title>The options for &defstruct;.</title> + +<section id="defstruct-print-function"><title>The &print-function-k; + option.</title> + <para>The &print-function-k; option should contain a &lambda-expr; <code>(&lambda-m; (object stream depth) (declare (ignore depth)) ...)</code> This &lambda-expr; names a &function-t; whose task is to output the @@ -1050,11 +1055,43 @@ &print-gensym-var;, &print-array-var;, &pr-closure;, &pr-rpars;, &pr-indent;.</simpara></listitem> </itemizedlist> +</section> -<formalpara id="defstruct-inherit"><title>Option &inherit-k;</title> +<section id="defstruct-inherit"><title>The &inherit-k; option</title> <para>The &inherit-k; option is exactly like &include-k; except that it does not create new accessors for the inherited slots (this is a - &clisp; extension).</para></formalpara> + &clisp; extension).</para></section> + +</section> + +<section id="defstruct-mop"><title>The structure &mop;.</title> +<para>The following functions accept a structure &name-r; as the only argument. + If &defstruct; was given the &type-k; option (i.e., &defstruct; did + ¬-e; define a new type), then <code>(&fund-class; &name-r;)</code> + fails (and the regular &clos; &mop; is not applicable), but these + functions still work.</para> +<variablelist> +<varlistentry><term><function>EXT:STRUCTURE-SLOTS</function></term> + <listitem><simpara></simpara>Return the &list-t; of + &esdmo;s.</listitem></varlistentry> +<varlistentry><term><function>EXT:STRUCTURE-DIRECT-SLOTS</function></term> + <listitem><simpara></simpara>Return the &list-t; of + &dsdmo;s.</listitem></varlistentry> +<varlistentry><term><function>EXT:STRUCTURE-KEYWORD-CONSTRUCTOR</function></term> + <listitem><simpara></simpara>Return the name (a &symbol;) of the + keyword constructor function for the structure, of &nil; if the + structure has no keyword constructor.</listitem></varlistentry> +<varlistentry><term><function>EXT:STRUCTURE-BOA-CONSTRUCTORS</function></term> + <listitem><simpara></simpara>Return the &list-t; of names (&symbol-t;s) + of BOA constructors for the structure.</listitem></varlistentry> +<varlistentry><term><function>EXT:STRUCTURE-COPIER</function></term> + <listitem><simpara></simpara>Return the name (a &symbol-t;) of the + copier for the structure.</listitem></varlistentry> +<varlistentry><term><function>EXT:STRUCTURE-PREDICATE</function></term> + <listitem><simpara></simpara>Return the name (a &symbol-t;) of the + predicate for the structure.</listitem></varlistentry> +</variablelist> +</section> </chapter> @@ -3354,8 +3391,8 @@ (cf. <filename>"c:/autoexec.bat"</filename>, <filename>"home:.clisprc"</filename> and <filename>"prep:/pub/gnu"</filename>) - and therefore is disabled by default. To enable the &ansi-cl; behavior, - you should set &parsename; to non-&nil;. + and therefore is disabled by default. + To enable the &ansi-cl; behavior, you should set &parsename; to non-&nil;. Note that this also disables treating &symbol-t;s as &path-des;s.</para> </section> @@ -4109,7 +4146,7 @@ appearance, special files, so you might need to supply an explicit &buffered; &nil; argument for them. Actually, &clisp; detects that the file is a <filename>/proc</filename> file, so that one is covered, - but there are probably more strange beasts there! + but there are probably more strange beasts out there! </para></listitem></varlistentry> </variablelist> ------------------------------ Message: 4 Date: Wed, 22 Nov 2006 01:30:57 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/src exporting.lisp, 1.16, 1.17 defstruct.lisp, 1.74, 1.75 NEWS, 1.355, 1.356 ChangeLog, 1.5459, 1.5460 To: cli...@li... Message-ID: <E1G...@ma...> Update of /cvsroot/clisp/clisp/src In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17119/src Modified Files: exporting.lisp defstruct.lisp NEWS ChangeLog Log Message: export structure MOP Index: NEWS =================================================================== RCS file: /cvsroot/clisp/clisp/src/NEWS,v retrieving revision 1.355 retrieving revision 1.356 diff -u -d -r1.355 -r1.356 --- NEWS 21 Nov 2006 01:06:43 -0000 1.355 +++ NEWS 22 Nov 2006 01:30:53 -0000 1.356 @@ -6,6 +6,9 @@ Thanks to James Bailey <dgy...@gm...> for the original code. See <http://clisp.cons.org/impnotes/gtk.html> for details. +* A kind of Meta-Object Protocol for structures is now available. + See <http://clisp.cons.org/impnotes/defstruct-mop.html> for details. + * Bug fixes: + Fixed rounding of long floats [even+1/2]. [ 1589311 ] + Fixed stdio when running without a TTY, e.g., under SSH. [ 1592343 ] Index: defstruct.lisp =================================================================== RCS file: /cvsroot/clisp/clisp/src/defstruct.lisp,v retrieving revision 1.74 retrieving revision 1.75 diff -u -d -r1.74 -r1.75 --- defstruct.lisp 6 May 2005 19:54:22 -0000 1.74 +++ defstruct.lisp 22 Nov 2006 01:30:53 -0000 1.75 @@ -1,8 +1,14 @@ ;;; Sources for CLISP DEFSTRUCT macro ;;; Bruno Haible 1988-2005 -;;; Sam Steingold 1998-2005 +;;; Sam Steingold 1998-2006 ;;; German comments translated into English: Stefan Kain 2003-01-14 +(in-package "CLOS") +;; Meta-Object Protocol for structures +(export '(structure-slots structure-direct-slots structure-instance-size + structure-kconstructor structure-boa-constructors structure-copier + structure-predicate)) + (in-package "SYSTEM") #| Explanation of the appearing data types: @@ -1195,13 +1201,13 @@ (setf (clos::class-instance-size class) new-value))))) |# -(defun structure-kconstructor (name) +(defun structure-keyword-constructor (name) (let ((desc (get name 'DEFSTRUCT-DESCRIPTION))) (if desc (svref desc *defstruct-description-kconstructor-location*) (clos::class-kconstructor (find-class name))))) #| - (defun (setf structure-kconstructor) (new-value name) + (defun (setf structure-keyword-constructor) (new-value name) (let ((desc (get name 'DEFSTRUCT-DESCRIPTION))) (if desc (setf (svref desc *defstruct-description-kconstructor-location*) new-value) @@ -1253,7 +1259,7 @@ (macrolet ((fmakunbound-if-present (symbol-form) `(let ((symbol ,symbol-form)) (when symbol (fmakunbound symbol))))) - (fmakunbound-if-present (structure-kconstructor name)) + (fmakunbound-if-present (structure-keyword-constructor name)) (mapc #'fmakunbound (structure-boa-constructors name)) (fmakunbound-if-present (structure-copier name)) (fmakunbound-if-present (structure-predicate name)) Index: exporting.lisp =================================================================== RCS file: /cvsroot/clisp/clisp/src/exporting.lisp,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- exporting.lisp 20 Nov 2005 01:36:59 -0000 1.16 +++ exporting.lisp 22 Nov 2006 01:30:51 -0000 1.17 @@ -112,11 +112,11 @@ (cl:defun export-structure-accessories (name) ; ABI (export name) - (export (sys::structure-kconstructor name)) - (export (sys::structure-boa-constructors name)) - (export (sys::structure-copier name)) - (export (sys::structure-predicate name)) - (dolist (slot (sys::structure-direct-slots name)) + (export (ext:structure-keyword-constructor name)) + (export (ext:structure-boa-constructors name)) + (export (ext:structure-copier name)) + (export (ext:structure-predicate name)) + (dolist (slot (ext:structure-direct-slots name)) (export (slot-definition-accessor-symbols slot)))) (cl:defmacro defstruct (name+options &rest slots) Index: ChangeLog =================================================================== RCS file: /cvsroot/clisp/clisp/src/ChangeLog,v retrieving revision 1.5459 retrieving revision 1.5460 diff -u -d -r1.5459 -r1.5460 --- ChangeLog 21 Nov 2006 01:06:43 -0000 1.5459 +++ ChangeLog 22 Nov 2006 01:30:53 -0000 1.5460 @@ -1,3 +1,14 @@ +2006-11-21 Sam Steingold <sd...@po...> + + export structure MOP + * defstruct.lisp (structure-keyword-constructor): renamed from + structure-kconstructor + * init.lisp (structure-slots, structure-direct-slots) + (structure-keyword-constructor, structure-boa-constructors) + (structure-copier, structure-predicate): export + * exporting.lisp (export-structure-accessories): the above are now + external in EXT, not internal in SYS + 2006-11-20 Sam Steingold <sd...@po...> fixed bug #[ 1436987 ]: atanh branch cut strangeness ------------------------------ Message: 5 Date: Wed, 22 Nov 2006 01:33:59 +0000 From: Sam Steingold <sd...@us...> Subject: clisp/doc impbody.xml,1.451,1.452 To: cli...@li... Message-ID: <E1G...@ma...> Update of /cvsroot/clisp/clisp/doc In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv18259/doc Modified Files: impbody.xml Log Message: typos Index: impbody.xml =================================================================== RCS file: /cvsroot/clisp/clisp/doc/impbody.xml,v retrieving revision 1.451 retrieving revision 1.452 diff -u -d -r1.451 -r1.452 --- impbody.xml 22 Nov 2006 01:30:55 -0000 1.451 +++ impbody.xml 22 Nov 2006 01:33:57 -0000 1.452 @@ -1067,29 +1067,29 @@ <section id="defstruct-mop"><title>The structure &mop;.</title> <para>The following functions accept a structure &name-r; as the only argument. If &defstruct; was given the &type-k; option (i.e., &defstruct; did - ¬-e; define a new type), then <code>(&fund-class; &name-r;)</code> + ¬-e; define a new type), then <code>(&find-class; &name-r;)</code> fails (and the regular &clos; &mop; is not applicable), but these functions still work.</para> <variablelist> <varlistentry><term><function>EXT:STRUCTURE-SLOTS</function></term> - <listitem><simpara></simpara>Return the &list-t; of - &esdmo;s.</listitem></varlistentry> + <listitem><simpara>Return the &list-t; of &esdmo;s. +</simpara></listitem></varlistentry> <varlistentry><term><function>EXT:STRUCTURE-DIRECT-SLOTS</function></term> - <listitem><simpara></simpara>Return the &list-t; of - &dsdmo;s.</listitem></varlistentry> + <listitem><simpara>Return the &list-t; of &dsdmo;s. +</simpara></listitem></varlistentry> <varlistentry><term><function>EXT:STRUCTURE-KEYWORD-CONSTRUCTOR</function></term> - <listitem><simpara></simpara>Return the name (a &symbol;) of the - keyword constructor function for the structure, of &nil; if the - structure has no keyword constructor.</listitem></varlistentry> + <listitem><simpara>Return the name (a &symbol-t;) of the keyword + constructor function for the structure, of &nil; if the structure has + no keyword constructor.</simpara></listitem></varlistentry> <varlistentry><term><function>EXT:STRUCTURE-BOA-CONSTRUCTORS</function></term> - <listitem><simpara></simpara>Return the &list-t; of names (&symbol-t;s) - of BOA constructors for the structure.</listitem></varlistentry> + <listitem><simpara>Return the &list-t; of names (&symbol-t;s) + of BOA constructors for the structure.</simpara></listitem></varlistentry> <varlistentry><term><function>EXT:STRUCTURE-COPIER</function></term> - <listitem><simpara></simpara>Return the name (a &symbol-t;) of the - copier for the structure.</listitem></varlistentry> + <listitem><simpara>Return the name (a &symbol-t;) of the copier for the + structure.</simpara></listitem></varlistentry> <varlistentry><term><function>EXT:STRUCTURE-PREDICATE</function></term> - <listitem><simpara></simpara>Return the name (a &symbol-t;) of the - predicate for the structure.</listitem></varlistentry> + <listitem><simpara>Return the name (a &symbol-t;) of the predicate for + the structure.</simpara></listitem></varlistentry> </variablelist> </section> ------------------------------ ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ------------------------------ _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest, Vol 7, Issue 14 **************************************** |