guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, master, updated. release_1-9-10-186-g4


From: Julian Graham
Subject: [Guile-commits] GNU Guile branch, master, updated. release_1-9-10-186-g43d6eb7
Date: Sat, 22 May 2010 22:21:23 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=43d6eb75f305cbe0ed9ca65024e6f5da597282bf

The branch, master has been updated
       via  43d6eb75f305cbe0ed9ca65024e6f5da597282bf (commit)
      from  96640816c8e69aa6a8fa5cdfd773a4218ea40eb5 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 43d6eb75f305cbe0ed9ca65024e6f5da597282bf
Author: Julian Graham <address@hidden>
Date:   Sat May 22 18:20:00 2010 -0400

    Edits for R6RS library implementation documentation, as suggested by
    Ludovic Courtès.
    
    * doc/ref/api-module.texi (R6RS Libraries): Wrap keywords variously in
      @code and @dfn forms; rewrite pointer to implicit phasing paper; add
      "Scheme Syntax" specification to @deffns.

-----------------------------------------------------------------------

Summary of changes:
 doc/ref/api-modules.texi |   35 +++++++++++++++++------------------
 1 files changed, 17 insertions(+), 18 deletions(-)

diff --git a/doc/ref/api-modules.texi b/doc/ref/api-modules.texi
index 28656d7..a1aff34 100644
--- a/doc/ref/api-modules.texi
+++ b/doc/ref/api-modules.texi
@@ -783,15 +783,15 @@ expressions:
 @subsection R6RS Libraries
 
 In addition to the API described in the previous sections, you also
-have the option to create modules using the portable ``library'' form
+have the option to create modules using the portable @code{library} form
 described in R6RS (@pxref{Library form, R6RS Library Form,, r6rs, The
 Revised^6 Report on the Algorithmic Language Scheme}), and to import 
 libraries created in this format by other programmers.  Guile's R6RS 
-libraries implementation takes advantage of the flexibility built 
-into the module system by expanding the R6RS library form into a 
-corresponding Guile ``define-module'' form that specifies equivalent
-import and export requirements and includes the same body 
-expressions.  The library expression:
+library implementation takes advantage of the flexibility built into the
+module system by expanding the R6RS library form into a corresponding 
+Guile @code{define-module} form that specifies equivalent import and 
+export requirements and includes the same body expressions.  The library
+expression:
 
 @lisp
   (library (mylib (1 2))
@@ -809,7 +809,7 @@ is equivalent to the module definition:
 @end lisp
 
 Central to the mechanics of R6RS libraries is the concept of import
-and export ``levels,'' which control the visibility of bindings at
+and export @dfn{levels}, which control the visibility of bindings at
 various phases of a library's lifecycle --- macros necessary to 
 expand forms in the library's body need to be available at expand 
 time; variables used in the body of a procedure exported by the
@@ -819,15 +819,14 @@ as a mechanism by which a library author can indicate 
that a
 particular library import should take place at a particular phase 
 with respect to the lifecycle of the importing library.  
 
-Guile's libraries implementation uses a technique called ``implicit 
-phasing'' (see @cite{Implicit Phasing for R6RS Libraries} by 
-Abdulaziz Ghuloum and R. Kent Dybvig), which allows the expander and
-compiler to automatically determine the necessary visibility of a 
-binding imported from another library.  As such, the @code{for} 
-sub-form described below is ignored by Guile (but may be required by
-Schemes in which phasing is explicit).
+Guile's libraries implementation uses a technique called 
address@hidden phasing} (first described by Abdulaziz Ghuloum and R. 
+Kent Dybvig), which allows the expander and compiler to automatically 
+determine the necessary visibility of a binding imported from another 
+library.  As such, the @code{for} sub-form described below is ignored by
+Guile (but may be required by Schemes in which phasing is explicit).
 
address@hidden syntax library name (export export-spec ...) (import import-spec 
...) body ...
address@hidden {Scheme Syntax} library name (export export-spec ...) (import 
import-spec ...) body ...
 Defines a new library with the specified name, exports, and imports,
 and evaluates the specified body expressions in this library's 
 environment.
@@ -843,7 +842,7 @@ identifier @var{internal-name} names a variable defined or 
imported
 by the library and @var{external-name} is the name by which the
 variable is seen by importing libraries.
 
-Each @var{import-spec} must be either an ``import set'' (see below) 
+Each @var{import-spec} must be either an @dfn{import set} (see below)
 or must be of the form @code{(for import-set import-level ...)}, 
 where each @var{import-level} is one of:
 
@@ -910,10 +909,10 @@ your libraries less portable to other Schemes.
 
 @end deffn
 
address@hidden syntax import import-spec ...
address@hidden {Scheme Syntax} import import-spec ...
 Import into the current environment the libraries specified by the
 given import specifications, where each @var{import-spec} takes the
-same form as in the ``library'' form described above.
+same form as in the @code{library} form described above.
 @end deffn
 
 


hooks/post-receive
-- 
GNU Guile



reply via email to

[Prev in Thread] Current Thread [Next in Thread]