+2002-03-29 Neil Jerram <neil@ossau.uklinux.net>
+
+ * posix.texi (Ports and File Descriptors), scheme-evaluation.texi
+ (Fly Evaluation): Remove vgone markers for close-all-ports-except,
+ eval2 and read-and-eval!.
+
+ * data-rep.texi (Describing a New Type), scheme-compound.texi
+ (Append/Reverse), scheme-procedures.texi (Internal Macros):
+ Trivial updates to sync with stable branch.
+
2002-03-27 Neil Jerram <neil@ossau.uklinux.net>
* scheme-compound.texi (List Searching): Remove docs for
@c essay @sp 10
@c essay @comment The title is printed in a large font.
@c essay @title Data Representation in Guile
-@c essay @subtitle $Id: data-rep.texi,v 1.6 2002-03-12 21:08:57 ossau Exp $
+@c essay @subtitle $Id: data-rep.texi,v 1.7 2002-03-29 20:25:23 ossau Exp $
@c essay @subtitle For use with Guile @value{VERSION}
@c essay @author Jim Blandy
@c essay @author Free Software Foundation
@xref{Garbage Collecting Smobs}, for more details.
@item free
-Guile will apply this function to each instance of the new type it
-could not find any live pointers to. The function should release all
+Guile will apply this function to each instance of the new type it could
+not find any live pointers to. The function should release all
resources held by the object and return the number of bytes released.
This is analogous to the Java finalization method-- it is invoked at
an unspecified time (when garbage collection occurs) after the object
used only during port creation are not retained.
@end deffn
-@vgone{close-all-ports-except,1.6}
-
@deffn {Scheme Procedure} port-for-each proc
@deffnx {C Function} scm_port_for_each (proc)
Apply @var{proc} to each port in the Guile port table
@deffn {Scheme Procedure} append! . lists
@deffnx {C Function} scm_append_x (lists)
A destructive version of @code{append} (@pxref{Pairs and
-Lists,,,r5rs, The Revised^5 Report on Scheme}). The cdr field
+lists,,,r5rs, The Revised^5 Report on Scheme}). The cdr field
of each list's final pair is changed to point to the head of
the next list, so no consing is performed. Return a pointer to
the mutated list.
@c NJFIXME explain new_tail
@deffn {Scheme Procedure} reverse! lst [new_tail]
@deffnx {C Function} scm_reverse_x (lst, new_tail)
-A destructive version of @code{reverse} (@pxref{Pairs and Lists,,,r5rs,
+A destructive version of @code{reverse} (@pxref{Pairs and lists,,,r5rs,
The Revised^5 Report on Scheme}). The cdr of each cell in @var{lst} is
modified to point to the previous list element. Return a pointer to the
head of the reversed list.
the current module.
@end deffn
-@vgone{eval2,1.6}
-@vgone{read-and-eval!,1.6}
-
@node Loading
@section Loading Scheme Code from File
@deffn {Scheme Procedure} procedure->syntax code
@deffnx {C Function} scm_makacro (code)
-Return a @dfn{macro} which, when a symbol defined to this value
-appears as the first symbol in an expression, returns the
-result of applying @var{code} to the expression and the
-environment.
+Return a macro which, when a symbol defined to this value appears as the
+first symbol in an expression, returns the result of applying @var{code}
+to the expression and the environment.
@end deffn
@deffn {Scheme Procedure} procedure->macro code
@deffnx {C Function} scm_makmacro (code)
-Return a @dfn{macro} which, when a symbol defined to this value
-appears as the first symbol in an expression, evaluates the
-result of applying @var{code} to the expression and the
-environment. For example:
+Return a macro which, when a symbol defined to this value appears as the
+first symbol in an expression, evaluates the result of applying
+@var{code} to the expression and the environment. For example:
@lisp
(define trace
(procedure->macro
- (lambda (x env) `(set! ,(cadr x) (tracef ,(cadr x) ',(cadr x))))))
+ (lambda (x env)
+ `(set! ,(cadr x) (tracef ,(cadr x) ',(cadr x))))))
-(trace @i{foo}) @equiv{} (set! @i{foo} (tracef @i{foo} '@i{foo})).
+(trace @i{foo})
+@equiv{}
+(set! @i{foo} (tracef @i{foo} '@i{foo})).
@end lisp
@end deffn