unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Patch: New section "Invoking Guile" for chapter "Programming in Scheme"
@ 2011-04-23 19:46 Mark Harig
  2011-04-24 14:33 ` Andy Wingo
  0 siblings, 1 reply; 20+ messages in thread
From: Mark Harig @ 2011-04-23 19:46 UTC (permalink / raw)
  To: guile-devel


[-- Attachment #1.1: Type: text/plain, Size: 1047 bytes --]

Here is a set of patches to add the new section "Invoking Guile" to the chapter "Programming in Scheme."


CAVEAT: Please review the subsection "Environment Variables" thoroughly before committing this change.
This subsection is "incorekt and incomplet."  The list of variables is my *guess* based on looking through the
NEWS file.  Some variables might need to be deleted from the list and some missing ones might need to be
added.  The descriptions of the variables are also my guess (when I could make a guess) based on
descriptions I could find.  Please change or delete these variables or their descriptions as needed.


Please find attached five (git format-patch) patch files (one for each changed file).  I am also including the
plain-text version of the new section "Invoking Guile" so that the content can be more easily reviewed
without having to navigate the texinfo macros.


I have attempted to check the .texinfo files by reviewing both the .info and .dvi (TeX) files that can be
generated from the .texinfo files.

[-- Attachment #1.2: Type: text/html, Size: 1330 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Signed-off-by-Mark-Harig-idirectscm-aim.com.patch --]
[-- Type: text/x-patch; name="0001-Signed-off-by-Mark-Harig-idirectscm-aim.com.patch", Size: 1839 bytes --]

From dd63bd48cf3db53c20fb1e9e8d85e91fe29dc1a2 Mon Sep 17 00:00:00 2001
From: Mark Harig <idirectscm@aim.com>
Date: Sat, 23 Apr 2011 13:01:39 -0400

* doc/ref/guile.texi (node Programming in Scheme): Added menu entry for
  the new section "Invoking Guile" to the chapter "Programming in
  Scheme".  Added '@include' to add the new file 'guile-invoke.texi',
  which has the new section.

---
 doc/ref/guile.texi |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/doc/ref/guile.texi b/doc/ref/guile.texi
index dfadd13..26d32b7 100644
--- a/doc/ref/guile.texi
+++ b/doc/ref/guile.texi
@@ -217,20 +217,22 @@ Guile's core language is Scheme, and a lot can be achieved simply by using Guile
 to write and run Scheme programs --- as opposed to having to dive into C code.
 In this part of the manual, we explain how to use Guile in this mode, and
 describe the tools that Guile provides to help you with script writing,
-debugging and packaging your programs for distribution.
+debugging, and packaging your programs for distribution.
 
-For detailed reference information on the variables, functions
-etc. that make up Guile's application programming interface (API),
-@xref{API Reference}.
+For detailed reference information on the variables, functions, and so
+on that make up Guile's application programming interface (API), see
+@ref{API Reference}.
 
 @menu
 * Guile Scheme::                Guile's implementation of Scheme.
+* Invoking Guile::              Command-line options understood by Guile.
 * Guile Scripting::             How to write Guile scripts.
 * Using Guile Interactively::   Guile's REPL features.
 * Using Guile in Emacs::        Guile and Emacs.
 @end menu
 
 @include scheme-intro.texi
+@include guile-invoke.texi
 @include scheme-scripts.texi
 @include scheme-using.texi
 
-- 
1.7.4.4


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-Signed-off-by-Mark-Harig-idirectscm-aim.com.patch --]
[-- Type: text/x-patch; name="0002-Signed-off-by-Mark-Harig-idirectscm-aim.com.patch", Size: 8200 bytes --]

From 8c4301321bbe23de70d8e7c5ec4bd6567840851b Mon Sep 17 00:00:00 2001
From: Mark Harig <idirectscm@aim.com>
Date: Sat, 23 Apr 2011 13:07:48 -0400

* doc/ref/scheme-scripts.texi (node Guile Scripting): Deleted the menu
  entry for the section "Invoking Guile."  Deleted the node and
  subsection "Invoking Guile."  This node has been moved to the new file
  'doc/ref/guile-invoke.texi'.

---
 doc/ref/scheme-scripts.texi |  168 -------------------------------------------
 1 files changed, 0 insertions(+), 168 deletions(-)

diff --git a/doc/ref/scheme-scripts.texi b/doc/ref/scheme-scripts.texi
index 0ad1bec..7552dba 100644
--- a/doc/ref/scheme-scripts.texi
+++ b/doc/ref/scheme-scripts.texi
@@ -14,7 +14,6 @@ then tells Guile how to handle the Scheme code.
 
 @menu
 * The Top of a Script File::    How to start a Guile script.
-* Invoking Guile::              Command line options understood by Guile.
 * The Meta Switch::             Passing complex argument lists to Guile
                                 from shell scripts.
 * Command Line Handling::       Accessing the command line from a script.
@@ -76,173 +75,6 @@ The rest of the file should be a Scheme program.
 Guile reads the program, evaluating expressions in the order that they
 appear.  Upon reaching the end of the file, Guile exits.
 
-
-@node Invoking Guile
-@subsection Invoking Guile
-@cindex invocation
-
-Here we describe Guile's command-line processing in detail.  Guile
-processes its arguments from left to right, recognizing the switches
-described below.  For examples, see @ref{Scripting Examples}.
-
-@table @code
-
-@item -s @var{script} @var{arg...}
-Read and evaluate Scheme source code from the file @var{script}, as the
-@code{load} function would.  After loading @var{script}, exit.  Any
-command-line arguments @var{arg...} following @var{script} become the
-script's arguments; the @code{command-line} function returns a list of
-strings of the form @code{(@var{script} @var{arg...})}.
-
-@item -c @var{expr} @var{arg...}
-Evaluate @var{expr} as Scheme code, and then exit.  Any command-line
-arguments @var{arg...} following @var{expr} become command-line arguments; the
-@code{command-line} function returns a list of strings of the form
-@code{(@var{guile} @var{arg...})}, where @var{guile} is the path of the
-Guile executable.
-
-@item -- @var{arg...}
-Run interactively, prompting the user for expressions and evaluating
-them.  Any command-line arguments @var{arg...} following the @code{--}
-become command-line arguments for the interactive session; the
-@code{command-line} function returns a list of strings of the form
-@code{(@var{guile} @var{arg...})}, where @var{guile} is the path of the
-Guile executable.
-
-@item -L @var{directory}
-Add @var{directory} to the front of Guile's module load path.  The
-given directories are searched in the order given on the command line
-and before any directories in the GUILE_LOAD_PATH environment
-variable.  Paths added here are @emph{not} in effect during execution
-of the user's @file{.guile} file.
-
-@item -x @var{extension}
-Add @var{extension} to the front of Guile's load extension list
-(@pxref{Loading, @code{%load-extensions}}).  The specified extensions
-are tried in the order given on the command line, and before the default
-load extensions.  Extensions added here are @emph{not} in effect during
-execution of the user's @file{.guile} file.
-
-@item -l @var{file}
-Load Scheme source code from @var{file}, and continue processing the
-command line.
-
-@item -e @var{function}
-Make @var{function} the @dfn{entry point} of the script.  After loading
-the script file (with @code{-s}) or evaluating the expression (with
-@code{-c}), apply @var{function} to a list containing the program name
-and the command-line arguments --- the list provided by the
-@code{command-line} function.
-
-A @code{-e} switch can appear anywhere in the argument list, but Guile
-always invokes the @var{function} as the @emph{last} action it performs.
-This is weird, but because of the way script invocation works under
-POSIX, the @code{-s} option must always come last in the list.
-
-The @var{function} is most often a simple symbol that names a function
-that is defined in the script.  It can also be of the form @code{(@@
-@var{module-name} @var{symbol})} and in that case, the symbol is
-looked up in the module named @var{module-name}.
-
-For compatibility with some versions of Guile 1.4, you can also use the
-form @code{(symbol ...)} (that is, a list of only symbols that doesn't
-start with @code{@@}), which is equivalent to @code{(@@ (symbol ...)
-main)}, or @code{(symbol ...)  symbol} (that is, a list of only symbols
-followed by a symbol), which is equivalent to @code{(@@ (symbol ...)
-symbol)}.  We recommend to use the equivalent forms directly since they
-correspond to the @code{(@@ ...)}  read syntax that can be used in
-normal code, @xref{Using Guile Modules}.
-
-@xref{Scripting Examples}.
-
-@item -ds
-Treat a final @code{-s} option as if it occurred at this point in the
-command line; load the script here.
-
-This switch is necessary because, although the POSIX script invocation
-mechanism effectively requires the @code{-s} option to appear last, the
-programmer may well want to run the script before other actions
-requested on the command line.  For examples, see @ref{Scripting
-Examples}.
-
-@item \
-Read more command-line arguments, starting from the second line of the
-script file.  @xref{The Meta Switch}.
-
-@item --use-srfi=@var{list}
-The option @code{--use-srfi} expects a comma-separated list of numbers,
-each representing a SRFI number to be loaded into the interpreter
-before starting evaluating a script file or the REPL.  Additionally,
-the feature identifier for the loaded SRFIs is recognized by
-`cond-expand' when using this option.
-
-@example
-guile --use-srfi=8,13
-@end example
-
-@item --debug
-Start with the debugging virtual machine engine.  Using the debugging VM
-will enable support for VM hooks, which are needed for tracing,
-breakpoints, and accurate call counts when profiling.  The debugging VM
-is slower than the regular VM, though, by about 10 percent.  @xref{VM
-Hooks}, for more information.
-
-By default, the debugging VM engine is only used when entering an
-interactive session.  When executing a script with @code{-s} or
-@code{-c}, the normal, faster VM is used by default.
-
-@vnew{1.8}
-@item --no-debug
-Do not use the debugging VM engine, even when entering an interactive
-session.
-
-@item -q
-Do not the local initialization file, @code{.guile}.  This option only
-has an effect when running interactively; running scripts does not load
-the @code{.guile} file.  @xref{Init File}.
-
-@item --listen[=@var{p}]
-While this program runs, listen on a local port or a path for REPL
-clients.  If @var{p} starts with a number, it is assumed to be a local
-port on which to listen.  If it starts with a forward slash, it is
-assumed to be a path to a UNIX domain socket on which to listen.
-
-If @var{p} is not given, the default is local port 37146.  If you look
-at it upside down, it almost spells ``Guile''.  If you have netcat
-installed, you should be able to @kbd{nc localhost 37146} and get a
-Guile prompt.  Alternately you can fire up Emacs and connect to the
-process; see @ref{Using Guile in Emacs} for more details.
-
-Note that opening a port allows anyone who can connect to that port---in
-the TCP case, any local user---to do anything Guile can do, as the user
-that the Guile process is running as.  Don't use @option{--listen} on
-multi-user machines.  Of course, if you don't pass @option{--listen} to
-Guile, no port will be opened.
-
-That said, @code{--listen} is great for interactive debugging and
-development.
-
-@vnew{2.0}
-
-@item --auto-compile
-Compile source files automatically (default behavior).
-
-@vnew{2.0}
-
-@item --no-auto-compile
-Disable automatic source file compilation.
-
-@vnew{2.0}
-
-@item -h@r{, }--help
-Display help on invoking Guile, and then exit.
-
-@item -v@r{, }--version
-Display the current version of Guile, and then exit.
-
-@end table
-
-
 @node The Meta Switch
 @subsection The Meta Switch
 
-- 
1.7.4.4


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-doc-ref-guile-invoke.texi-node-Invoking-Guile-Initia.patch --]
[-- Type: text/x-patch; name="0003-doc-ref-guile-invoke.texi-node-Invoking-Guile-Initia.patch", Size: 17571 bytes --]

From f4ac15f540e22fc83d13005efaaebb75d4603fc3 Mon Sep 17 00:00:00 2001
From: Mark Harig <idirectscm@aim.com>
Date: Sat, 23 Apr 2011 13:23:58 -0400

* doc/ref/guile-invoke.texi (node Invoking Guile): Initial revision.
  This file contains the former section "Invoking Guile" that was
  included in the chapter "Programming in Scheme" as a subsection
  named "Command-line Options."  It also includes a new subsection
  "Environment Variables," which describes those variables that can be
  set in the operating system before Guile is started and which affect
  Guile's run-time behavior.

---
 doc/ref/guile-invoke.texi |  421 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 421 insertions(+), 0 deletions(-)
 create mode 100644 doc/ref/guile-invoke.texi

diff --git a/doc/ref/guile-invoke.texi b/doc/ref/guile-invoke.texi
new file mode 100644
index 0000000..4d11c95
--- /dev/null
+++ b/doc/ref/guile-invoke.texi
@@ -0,0 +1,421 @@
+@c -*-texinfo-*-
+@c This is part of the GNU Guile Reference Manual.
+@c Copyright (C)  1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2010, 2011
+@c   Free Software Foundation, Inc.
+@c See the file guile.texi for copying conditions.
+
+@node Invoking Guile
+@section Invoking Guile
+@cindex invocation
+
+@menu
+* Command-line Options::        Command-line options understood by Guile.
+* Environment Variables::       Variables that affect Guile's behavior.
+@end menu
+
+@node Command-line Options
+@subsection Command-line Options
+@cindex Command-line Options
+@cindex command-line arguments
+@cindex arguments (command line)
+@cindex options (command line)
+@cindex switches (command line)
+@cindex startup (command-line arguments)
+@cindex invocation (command-line arguments)
+
+Here we describe Guile's command-line processing in detail.  Guile
+processes its arguments from left to right, recognizing the switches
+described below.  For examples, see @ref{Scripting Examples}.
+
+@table @code
+
+@item -s @var{script} @var{arg...}
+@cindex script mode
+Read and evaluate Scheme source code from the file @var{script}, as the
+@code{load} function would.  After loading @var{script}, exit.  Any
+command-line arguments @var{arg...} following @var{script} become the
+script's arguments; the @code{command-line} function returns a list of
+strings of the form @code{(@var{script} @var{arg...})}.
+
+@item -c @var{expr} @var{arg...}
+@cindex evaluate expression, command-line argument
+Evaluate @var{expr} as Scheme code, and then exit.  Any command-line
+arguments @var{arg...} following @var{expr} become command-line
+arguments; the @code{command-line} function returns a list of strings of
+the form @code{(@var{guile} @var{arg...})}, where @var{guile} is the
+path of the Guile executable.
+
+@item -- @var{arg...}
+Run interactively, prompting the user for expressions and evaluating
+them.  Any command-line arguments @var{arg...} following the @option{--}
+become command-line arguments for the interactive session; the
+@code{command-line} function returns a list of strings of the form
+@code{(@var{guile} @var{arg...})}, where @var{guile} is the path of the
+Guile executable.
+
+@item -L @var{directory}
+Add @var{directory} to the front of Guile's module load path.  The given
+directories are searched in the order given on the command line and
+before any directories in the @env{GUILE_LOAD_PATH} environment
+variable.  Paths added here are @emph{not} in effect during execution of
+the user's @file{.guile} file.
+
+@item -x @var{extension}
+Add @var{extension} to the front of Guile's load extension list
+(@pxref{Loading, @code{%load-extensions}}).  The specified extensions
+are tried in the order given on the command line, and before the default
+load extensions.  Extensions added here are @emph{not} in effect during
+execution of the user's @file{.guile} file.
+
+@item -l @var{file}
+Load Scheme source code from @var{file}, and continue processing the
+command line.
+
+@item -e @var{function}
+Make @var{function} the @dfn{entry point} of the script.  After loading
+the script file (with @option{-s}) or evaluating the expression (with
+@option{-c}), apply @var{function} to a list containing the program name
+and the command-line arguments---the list provided by the
+@code{command-line} function.
+
+A @option{-e} switch can appear anywhere in the argument list, but Guile
+always invokes the @var{function} as the @emph{last} action it performs.
+This is weird, but because of the way script invocation works under
+POSIX, the @option{-s} option must always come last in the list.
+
+The @var{function} is most often a simple symbol that names a function
+that is defined in the script.  It can also be of the form @code{(@@
+@var{module-name} @var{symbol})}, and in that case, the symbol is
+looked up in the module named @var{module-name}.
+
+For compatibility with some versions of Guile 1.4, you can also use the
+form @code{(symbol ...)} (that is, a list of only symbols that doesn't
+start with @code{@@}), which is equivalent to @code{(@@ (symbol ...)
+main)}, or @code{(symbol ...)  symbol} (that is, a list of only symbols
+followed by a symbol), which is equivalent to @code{(@@ (symbol ...)
+symbol)}.  We recommend to use the equivalent forms directly since they
+correspond to the @code{(@@ ...)}  read syntax that can be used in
+normal code.  See @ref{Using Guile Modules} and @ref{Scripting
+Examples}.
+
+@item -ds
+Treat a final @option{-s} option as if it occurred at this point in the
+command line; load the script here.
+
+This switch is necessary because, although the POSIX script invocation
+mechanism effectively requires the @option{-s} option to appear last, the
+programmer may well want to run the script before other actions
+requested on the command line.  For examples, see @ref{Scripting
+Examples}.
+
+@item \
+Read more command-line arguments, starting from the second line of the
+script file.  @xref{The Meta Switch}.
+
+@item --use-srfi=@var{list}
+The option @option{--use-srfi} expects a comma-separated list of numbers,
+each representing a SRFI number to be loaded into the interpreter
+before evaluating a script file or starting the REPL.  Additionally,
+the feature identifier for the loaded SRFIs is recognized by
+the procedure @code{cond-expand} when using this option.
+
+@example
+guile --use-srfi=8,13
+@end example
+
+@item --debug
+@cindex debugging virtual machine (command line)
+Start with the debugging virtual machine (VM) engine.  Using the
+debugging VM will enable support for VM hooks, which are needed for
+tracing, breakpoints, and accurate call counts when profiling.  The
+debugging VM is slower than the regular VM, though, by about ten
+percent.  @xref{VM Hooks}, for more information.
+
+By default, the debugging VM engine is only used when entering an
+interactive session.  When executing a script with @option{-s} or
+@option{-c}, the normal, faster VM is used by default.
+
+@vnew{1.8}
+@item --no-debug
+@cindex debugging virtual machine (command line)
+Do not use the debugging VM engine, even when entering an interactive
+session.
+
+@item -q
+@cindex init file, not loading
+@cindex @file{.guile} file, not loading
+Do not load the initialization file, @file{.guile}.  This option only
+has an effect when running interactively; running scripts does not load
+the @file{.guile} file.  @xref{Init File}.
+
+@item --listen[=@var{p}]
+While this program runs, listen on a local port or a path for REPL
+clients.  If @var{p} starts with a number, it is assumed to be a local
+port on which to listen.  If it starts with a forward slash, it is
+assumed to be a path to a UNIX domain socket on which to listen.
+
+If @var{p} is not given, the default is local port 37146.  If you look
+at it upside down, it almost spells ``Guile''.  If you have netcat
+installed, you should be able to @kbd{nc localhost 37146} and get a
+Guile prompt.  Alternately you can fire up Emacs and connect to the
+process; see @ref{Using Guile in Emacs} for more details.
+
+Note that opening a port allows anyone who can connect to that port---in
+the TCP case, any local user---to do anything Guile can do, as the user
+that the Guile process is running as.  Don't use @option{--listen} on
+multi-user machines.  Of course, if you don't pass @option{--listen} to
+Guile, no port will be opened.
+
+That said, @option{--listen} is great for interactive debugging and
+development.
+
+@vnew{2.0}
+
+@item --auto-compile
+Compile source files automatically (default behavior).
+
+@vnew{2.0}
+
+@item --no-auto-compile
+Disable automatic source file compilation.
+
+@vnew{2.0}
+
+@item -h@r{, }--help
+Display help on invoking Guile, and then exit.
+
+@item -v@r{, }--version
+Display the current version of Guile, and then exit.
+
+@end table
+
+@node Environment Variables
+@subsection Environment Variables
+@cindex environment variables
+@cindex shell
+@cindex initialization
+The @dfn{environment} is a feature of the operating system; it consists
+of a collection of variables with names and values.  Each variable is
+called an @dfn{environment variable} (or, sometimes, a ``shell
+variable''); environment variable names are case-sensitive, and it is
+conventional to use upper-case letters only.  The values are all text
+strings, even those that are written as numerals.  (Note that here we
+are referring to names and values that are defined in the operating
+system shell from which Guile is invoked.  This is not the same as a
+Scheme environment that is defined within a running instance of guile.
+For a description of Scheme environments, see @pxref{About
+Environments}.)
+   
+How to set environment variables before starting Guile depends on the
+operating system, and especially the shell that you are using.  For
+example, here's how to set the environment variable @env{ORGANIZATION}
+to @samp{not very much} using Bash:
+
+@example
+export ORGANIZATION="not very much"
+@end example
+
+@noindent
+and here's how to do it in csh or tcsh:
+
+@example
+setenv ORGANIZATION "not very much"
+@end example
+
+If you wish to retrieve or change the value of the shell environment
+variables that effect the run-time behavior of Guile from within a
+running instance of guile, see @xref{Runtime Environment}.
+
+Here are the environment variables that effect the run-time behavior of
+Guile:
+
+@table @env
+@item GUILE_AUTO_COMPILE
+@vindex GUILE_AUTO_COMPILE
+This is a flag that can be used to tell Guile whether or not to compile
+Scheme source files automatically.  Starting with Guile 2.0, Scheme
+source files will be compiled automatically, by default.  If
+@env{GUILE_AUTO_COMPILE} is set to zero (0), then Scheme files are not
+compiled automatically.
+
+If a compiled @file{.go} file corresponding to a @file{.scm} file is not
+found or is not newer than the @file{.scm} file, the @file{.scm} file
+will be compiled on the fly, and the resulting @file{.go} file stored
+away.  An advisory note will be printed on the console.
+
+Note that this mechanism depends on the timestamp of the @file{.go} file
+being newer than that of the @file{.scm} file; if the @file{.scm} or
+@file{.go} files are moved after installation, care should be taken to
+preserve their original timestamps.
+
+Auto-compiled files will be stored in the directory
+@file{$XDG_CACHE_HOME/guile/ccache}, where @env{XDG_CACHE_HOME} defaults
+to the directory @file{$HOME/.cache}.  This directory will be created if
+it does not already exist.
+
+To inhibit automatic compilation, set the @env{GUILE_AUTO_COMPILE}
+environment variable to zero (0), or pass @option{--no-auto-compile} on
+the Guile command line.
+
+@item GUILE_HISTORY
+@vindex GUILE_HISTORY
+This variable names the file that holds the Guile REPL command history.
+You can specify a different history file by setting this environment
+variable.  By default, the history file is @file{$HOME/.guile_history}.
+
+@item GUILE_HUSH
+@vindex GUILE_HUSH
+The @code{#/} notation for lists provokes a warning message from Guile.
+This syntax will be removed from Guile in the near future.
+
+To disable the warning message, set the @env{GUILE_HUSH} environment
+variable to any non-empty value.
+
+@item GUILE_INIT_MALLOC_LIMIT
+@vindex GUILE_INIT_MALLOC_LIMIT
+@item GUILE_MIN_YIELD_MALLOC
+@vindex GUILE_MIN_YIELD_MALLOC
+@cindex garbage collecting
+The garbage collector uses lazy sweeping.  This is reflected in the
+output of the procedure @code{gc-stats}; since cells are being freed
+when they are allocated, the cells-allocated field stays roughly
+constant.
+
+For malloc-related triggers, the garbage collector uses the same
+heuristic as the cell-triggered collections.  It may be tuned with the
+environment variable @env{GUILE_MIN_YIELD_MALLOC}.  This is the
+percentage for minimum yield of malloc-related triggers.  The default is
+forty (40) percent.
+
+@env{GUILE_INIT_MALLOC_LIMIT} sets the size in kilobytes of the initial
+trigger for garbage collection.  The default is two hundred (200)
+kilobytes.
+
+@item GUILE_MAX_SEGMENT_SIZE
+@vindex GUILE_MAX_SEGMENT_SIZE
+@item GUILE_INIT_SEGMENT_SIZE_2
+@vindex GUILE_INIT_SEGMENT_SIZE_2
+@item GUILE_INIT_SEGMENT_SIZE_1
+@vindex GUILE_INIT_SEGMENT_SIZE_1
+@item GUILE_MIN_YIELD_2
+@vindex GUILE_MIN_YIELD_2
+Debugging operations for the freelist have been deprecated, along with
+the C variables that control garbage collection.  The environment
+variables @env{GUILE_MAX_SEGMENT_SIZE}, @env{GUILE_INIT_SEGMENT_SIZE_2},
+@env{GUILE_INIT_SEGMENT_SIZE_1}, and @env{GUILE_MIN_YIELD_2} should be
+used (units: bytes? kilobytes?)
+
+@item GUILE_LOAD_COMPILED_PATH
+@vindex GUILE_LOAD_COMPILED_PATH
+This variable may be used to augment the path that is searched for
+compiled Scheme files (@file{.go} files) when loading.  Its value should
+be a colon-separated list of directories, which will be prefixed to the
+value of the default search path stored in @code{%load-compiled-path}.
+
+Here is an example using the Bash shell that adds the current directory,
+@file{.}, and the relative directory @file{../my-library} to
+@code{%load-compiled-path}:
+
+@example
+$ export GUILE_LOAD_COMPILED_PATH=".:../my-library"
+$ guile -c '(display %load-compiled-path) (newline)'
+(. ../my-library /usr/local/lib/guile/2.0/ccache)
+@end example
+
+@item GUILE_LOAD_PATH
+@vindex GUILE_LOAD_PATH
+This variable may be used to augment the path that is searched for
+Scheme files when loading.  Its value should be a colon-separated list
+of directories, which will be prefixed to the value of the default
+search path stored in @code{%load-path}.
+
+Here is an example using the Bash shell that adds the current directory
+and the parent of the current directory to @code{%load-path}:
+
+@example
+$ env GUILE_LOAD_PATH=".:.." \
+guile -c '(display %load-path) (newline)'
+(. .. /usr/local/share/guile/2.0 \
+/usr/local/share/guile/site/2.0 \
+/usr/local/share/guile/site /usr/local/share/guile)
+@end example
+
+(Note: The line breaks, above, are for documentation purposes only, and
+not required in the actual example.)
+
+@item GUILE_SYSTEM_LOAD_COMPILED_PATH
+@vindex GUILE_SYSTEM_LOAD_COMPILED_PATH
+Please provide a description of me, or delete me if I am obsolete.
+
+@item GUILE_SYSTEM_PATH
+@vindex GUILE_SYSTEM_PATH
+Please provide a description of me, or delete me if I am obsolete.
+
+@item GUILE_SYSTEM_LTDL_PATH
+@vindex GUILE_SYSTEM_LTDL_PATH
+Please provide a description of me, or delete me if I am obsolete.
+
+@item GUILE_INIT_SEGMENT_SIZE_1
+@vindex GUILE_INIT_SEGMENT_SIZE_1
+@cindex memory allocation, heap
+The application can set up other default values for the
+garbage-collection heap allocation parameters.  Allocation of two-word
+cell heaps is controlled by the environment variables
+@env{GUILE_INIT_SEGMENT_SIZE_1} and @env{GUILE_MIN_YIELD_1}.
+@env{GUILE_INIT_SEGMENT_SIZE_1} is the size of initial heap segment in
+bytes (default is 360000).
+
+@item GUILE_MIN_YIELD_1
+@vindex GUILE_MIN_YIELD_1
+Minimum number of freed cells at each garbage collection in percent of
+total heap size (default is forty (40) percent).
+
+@item GUILE_INIT_SEGMENT_SIZE_2
+@vindex GUILE_INIT_SEGMENT_SIZE_2
+Allocation of four-word cell heaps is controlled by the environment
+variables @env{GUILE_INIT_SEGMENT_SIZE_2} and @env{GUILE_MIN_YIELD_2}.
+Four-word cell heaps are used for real numbers and miscellaneous other
+objects.
+
+Please provide a description of @env{GUILE_INIT_SEGMENT_SIZE_2}.
+
+@item GUILE_MIN_YIELD_2
+@vindex GUILE_MIN_YIELD_2
+Please provide a description of @env{GUILE_MIN_YIELD_2}.
+
+@item GUILE_MAX_SEGMENT_SIZE
+@vindex GUILE_MAX_SEGMENT_SIZE
+Maximal segment size in bytes? kilobytes? (default is 2097000)
+
+@item GUILE_INIT_HEAP_SIZE_1
+@vindex GUILE_INIT_HEAP_SIZE_1
+Please provide a description of me.
+
+@item GUILE_INIT_HEAP_SIZE_2
+@vindex GUILE_INIT_HEAP_SIZE_2
+Please provide a description of me.
+
+@item GUILE_WARN_DEPRECATED
+@vindex GUILE_WARN_DEPRECATED
+Please provide a description of me.
+
+@item HOME
+@vindex HOME
+Guile uses the environment variable @env{HOME}, the name of your home
+directory, to locate various files, such as @file{.guile} or
+@file{.guile_history}.
+
+@item LTDL_LIBRARY_PATH
+@vindex LTDL_LIBRARY_PATH
+Guile now adds its install prefix to the @env{LTDL_LIBRARY_PATH}.
+
+Users may now install Guile in non-standard directories and run
+`/path/to/bin/guile', without having also to set @env{LTDL_LIBRARY_PATH}
+to include `/path/to/lib'.
+
+@end table
+
+@c Local Variables: 
+@c mode: texinfo
+@c TeX-master: "guile"
+@c End: 
-- 
1.7.4.4


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #5: 0004-doc-ref-indices.texi-Minor-corrections-to-the-text-a.patch --]
[-- Type: text/x-patch; name="0004-doc-ref-indices.texi-Minor-corrections-to-the-text-a.patch", Size: 2138 bytes --]

From df3a3a01f243dbdb19b1409ead3adf1fd7582b13 Mon Sep 17 00:00:00 2001
From: Mark Harig <idirectscm@aim.com>
Date: Sat, 23 Apr 2011 14:20:58 -0400

* doc/ref/indices.texi: Minor corrections to the text and cross
  references.

---
 doc/ref/indices.texi |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/doc/ref/indices.texi b/doc/ref/indices.texi
index afe571f..b114450 100644
--- a/doc/ref/indices.texi
+++ b/doc/ref/indices.texi
@@ -1,6 +1,6 @@
 @c -*-texinfo-*-
 @c This is part of the GNU Guile Reference Manual.
-@c Copyright (C)  1996, 1997, 2000, 2001, 2002, 2003, 2004
+@c Copyright (C)  1996, 1997, 2000, 2001, 2002, 2003, 2004, 2011
 @c   Free Software Foundation, Inc.
 @c See the file guile.texi for copying conditions.
 
@@ -8,8 +8,8 @@
 @node Concept Index
 @unnumbered Concept Index
 
-This index contains concepts, keywords and non-Schemey names for several
-features, to make it easier to locate the desired sections.
+This index contains concepts, keywords, and non-Schemey names for
+several features to make it easier to locate the desired sections.
 
 @printindex cp
 
@@ -25,8 +25,8 @@ It also includes Guile's Autoconf macros.
 
 When looking for a particular procedure, please look under its Scheme
 name as well as under its C name.  The C name can be constructed from
-the Scheme names by a simple transformation described in the section
-@xref{API Overview}.
+the Scheme names by a simple transformation described in the API
+Reference (@pxref{API Overview}).
 
 @printindex fn
 
@@ -43,7 +43,7 @@ constants in Guile.
 When looking for a particular variable or constant, please look under
 its Scheme name as well as under its C name.  The C name can be
 constructed from the Scheme names by a simple transformation described
-in the section @xref{API Overview}.
+in the API Reference (@pxref{API Overview}).
 
 @printindex vr
 
@@ -53,7 +53,7 @@ in the section @xref{API Overview}.
 @unnumbered Type Index
 
 This is an alphabetical list of all the important data types defined in
-the Guile Programmers Manual.
+the Guile Reference Manual.
 
 @printindex tp
 
-- 
1.7.4.4


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #6: 0005-Corrected-some-cross-references-that-had-parentheses.patch --]
[-- Type: text/x-patch; name="0005-Corrected-some-cross-references-that-had-parentheses.patch", Size: 1985 bytes --]

From b4c4533eaf8d3994f24cddfb529dadff9187d877 Mon Sep 17 00:00:00 2001
From: Mark Harig <idirectscm@aim.com>
Date: Sat, 23 Apr 2011 14:53:03 -0400

* Corrected some cross references that had parentheses around the node
  name, which made the cross references invalid.

---
 doc/ref/r6rs.texi |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/doc/ref/r6rs.texi b/doc/ref/r6rs.texi
index bc569ed..5f31ef9 100644
--- a/doc/ref/r6rs.texi
+++ b/doc/ref/r6rs.texi
@@ -8,8 +8,8 @@
 @section R6RS Support
 @cindex R6RS
 
-@xref{R6RS Libraries}, for more information on how to define R6RS libraries, and
-their integration with Guile modules.
+@xref{R6RS Libraries}, for more information on how to define R6RS
+libraries, and their integration with Guile modules.
 
 @menu
 * R6RS Incompatibilities::              Guile mostly implements R6RS.
@@ -1584,7 +1584,7 @@ fixnum.
 @deffnx {Scheme Procedure} fxdiv0 fx1 fx2
 @deffnx {Scheme Procedure} fxmod0 fx1 fx2
 These procedures implement number-theoretic division on fixnums;
-@xref{(rnrs base)}, for a description of their semantics.
+@xref{rnrs base}, for a description of their semantics.
 @end deffn
 
 @deffn {Scheme Procedure} fx+/carry fx1 fx2 fx3
@@ -1770,7 +1770,7 @@ Returns the absolute value of @var{fl}.
 @deffnx {Scheme Procedure} fldiv0 fl1 fl2
 @deffnx {Scheme Procedure} flmod0 fl1 fl2
 These procedures implement number-theoretic division on flonums;
-@xref{(rnrs base)}, for a description for their semantics.
+@xref{rnrs base}, for a description for their semantics.
 @end deffn
 
 @deffn {Scheme Procedure} flnumerator fl
@@ -1800,7 +1800,7 @@ library.  @xref{Arithmetic}, for documentation.
 @deffnx {Scheme Procedure} flatan fl1 fl2
 These procedures, which compute the usual transcendental functions, are
 the flonum variants of the procedures provided by the R6RS base library
-(@pxref{(rnrs base)}).
+(@pxref{rnrs base}).
 @end deffn
 
 @deffn {Scheme Procedure} flsqrt fl
-- 
1.7.4.4


[-- Attachment #7: invoking-guile.txt --]
[-- Type: text/plain, Size: 14351 bytes --]

4.2 Invoking Guile
==================

4.2.1 Command-line Options
--------------------------

Here we describe Guile's command-line processing in detail.  Guile
processes its arguments from left to right, recognizing the switches
described below.  For examples, see *note Scripting Examples::.

`-s SCRIPT ARG...'
     Read and evaluate Scheme source code from the file SCRIPT, as the
     `load' function would.  After loading SCRIPT, exit.  Any
     command-line arguments ARG... following SCRIPT become the script's
     arguments; the `command-line' function returns a list of strings
     of the form `(SCRIPT ARG...)'.

`-c EXPR ARG...'
     Evaluate EXPR as Scheme code, and then exit.  Any command-line
     arguments ARG... following EXPR become command-line arguments; the
     `command-line' function returns a list of strings of the form
     `(GUILE ARG...)', where GUILE is the path of the Guile executable.

`-- ARG...'
     Run interactively, prompting the user for expressions and
     evaluating them.  Any command-line arguments ARG... following the
     `--' become command-line arguments for the interactive session; the
     `command-line' function returns a list of strings of the form
     `(GUILE ARG...)', where GUILE is the path of the Guile executable.

`-L DIRECTORY'
     Add DIRECTORY to the front of Guile's module load path.  The given
     directories are searched in the order given on the command line and
     before any directories in the `GUILE_LOAD_PATH' environment
     variable.  Paths added here are _not_ in effect during execution of
     the user's `.guile' file.

`-x EXTENSION'
     Add EXTENSION to the front of Guile's load extension list (*note
     `%load-extensions': Loading.).  The specified extensions are tried
     in the order given on the command line, and before the default
     load extensions.  Extensions added here are _not_ in effect during
     execution of the user's `.guile' file.

`-l FILE'
     Load Scheme source code from FILE, and continue processing the
     command line.

`-e FUNCTION'
     Make FUNCTION the "entry point" of the script.  After loading the
     script file (with `-s') or evaluating the expression (with `-c'),
     apply FUNCTION to a list containing the program name and the
     command-line arguments--the list provided by the `command-line'
     function.

     A `-e' switch can appear anywhere in the argument list, but Guile
     always invokes the FUNCTION as the _last_ action it performs.
     This is weird, but because of the way script invocation works under
     POSIX, the `-s' option must always come last in the list.

     The FUNCTION is most often a simple symbol that names a function
     that is defined in the script.  It can also be of the form `(@
     MODULE-NAME SYMBOL)', and in that case, the symbol is looked up in
     the module named MODULE-NAME.

     For compatibility with some versions of Guile 1.4, you can also
     use the form `(symbol ...)' (that is, a list of only symbols that
     doesn't start with `@'), which is equivalent to `(@ (symbol ...)
     main)', or `(symbol ...)  symbol' (that is, a list of only symbols
     followed by a symbol), which is equivalent to `(@ (symbol ...)
     symbol)'.  We recommend to use the equivalent forms directly since
     they correspond to the `(@ ...)'  read syntax that can be used in
     normal code.  See *note Using Guile Modules:: and *note Scripting
     Examples::.

`-ds'
     Treat a final `-s' option as if it occurred at this point in the
     command line; load the script here.

     This switch is necessary because, although the POSIX script
     invocation mechanism effectively requires the `-s' option to
     appear last, the programmer may well want to run the script before
     other actions requested on the command line.  For examples, see
     *note Scripting Examples::.

`\'
     Read more command-line arguments, starting from the second line of
     the script file.  *Note The Meta Switch::.

`--use-srfi=LIST'
     The option `--use-srfi' expects a comma-separated list of numbers,
     each representing a SRFI number to be loaded into the interpreter
     before evaluating a script file or starting the REPL.
     Additionally, the feature identifier for the loaded SRFIs is
     recognized by the procedure `cond-expand' when using this option.

          guile --use-srfi=8,13

`--debug'
     Start with the debugging virtual machine (VM) engine.  Using the
     debugging VM will enable support for VM hooks, which are needed for
     tracing, breakpoints, and accurate call counts when profiling.  The
     debugging VM is slower than the regular VM, though, by about ten
     percent.  *Note VM Hooks::, for more information.

     By default, the debugging VM engine is only used when entering an
     interactive session.  When executing a script with `-s' or `-c',
     the normal, faster VM is used by default.

`--no-debug'
     Do not use the debugging VM engine, even when entering an
     interactive session.

`-q'
     Do not load the initialization file, `.guile'.  This option only
     has an effect when running interactively; running scripts does not
     load the `.guile' file.  *Note Init File::.

`--listen[=P]'
     While this program runs, listen on a local port or a path for REPL
     clients.  If P starts with a number, it is assumed to be a local
     port on which to listen.  If it starts with a forward slash, it is
     assumed to be a path to a UNIX domain socket on which to listen.

     If P is not given, the default is local port 37146.  If you look
     at it upside down, it almost spells "Guile".  If you have netcat
     installed, you should be able to `nc localhost 37146' and get a
     Guile prompt.  Alternately you can fire up Emacs and connect to the
     process; see *note Using Guile in Emacs:: for more details.

     Note that opening a port allows anyone who can connect to that
     port--in the TCP case, any local user--to do anything Guile can
     do, as the user that the Guile process is running as.  Don't use
     `--listen' on multi-user machines.  Of course, if you don't pass
     `--listen' to Guile, no port will be opened.

     That said, `--listen' is great for interactive debugging and
     development.

`--auto-compile'
     Compile source files automatically (default behavior).

`--no-auto-compile'
     Disable automatic source file compilation.

`-h, --help'
     Display help on invoking Guile, and then exit.

`-v, --version'
     Display the current version of Guile, and then exit.


4.2.2 Environment Variables
---------------------------

The "environment" is a feature of the operating system; it consists of
a collection of variables with names and values.  Each variable is
called an "environment variable" (or, sometimes, a "shell variable");
environment variable names are case-sensitive, and it is conventional
to use upper-case letters only.  The values are all text strings, even
those that are written as numerals.  (Note that here we are referring
to names and values that are defined in the operating system shell from
which Guile is invoked.  This is not the same as a Scheme environment
that is defined within a running instance of guile.  For a description
of Scheme environments, see *note About Environments::.)

   How to set environment variables before starting Guile depends on the
operating system, and especially the shell that you are using.  For
example, here's how to set the environment variable `ORGANIZATION' to
`not very much' using Bash:

     export ORGANIZATION="not very much"

and here's how to do it in csh or tcsh:

     setenv ORGANIZATION "not very much"

   If you wish to retrieve or change the value of the shell environment
variables that effect the run-time behavior of Guile from within a
running instance of guile, see *Note Runtime Environment::.

   Here are the environment variables that effect the run-time behavior
of Guile:

`GUILE_AUTO_COMPILE'
     This is a flag that can be used to tell Guile whether or not to
     compile Scheme source files automatically.  Starting with Guile
     2.0, Scheme source files will be compiled automatically, by
     default.  If `GUILE_AUTO_COMPILE' is set to zero (0), then Scheme
     files are not compiled automatically.

     If a compiled `.go' file corresponding to a `.scm' file is not
     found or is not newer than the `.scm' file, the `.scm' file will
     be compiled on the fly, and the resulting `.go' file stored away.
     An advisory note will be printed on the console.

     Note that this mechanism depends on the timestamp of the `.go' file
     being newer than that of the `.scm' file; if the `.scm' or `.go'
     files are moved after installation, care should be taken to
     preserve their original timestamps.

     Auto-compiled files will be stored in the directory
     `$XDG_CACHE_HOME/guile/ccache', where `XDG_CACHE_HOME' defaults to
     the directory `$HOME/.cache'.  This directory will be created if
     it does not already exist.

     To inhibit automatic compilation, set the `GUILE_AUTO_COMPILE'
     environment variable to zero (0), or pass `--no-auto-compile' on
     the Guile command line.

`GUILE_HISTORY'
     This variable names the file that holds the Guile REPL command
     history.  You can specify a different history file by setting this
     environment variable.  By default, the history file is
     `$HOME/.guile_history'.

`GUILE_HUSH'
     The `#/' notation for lists provokes a warning message from Guile.
     This syntax will be removed from Guile in the near future.

     To disable the warning message, set the `GUILE_HUSH' environment
     variable to any non-empty value.

`GUILE_INIT_MALLOC_LIMIT'

`GUILE_MIN_YIELD_MALLOC'
     The garbage collector uses lazy sweeping.  This is reflected in the
     output of the procedure `gc-stats'; since cells are being freed
     when they are allocated, the cells-allocated field stays roughly
     constant.

     For malloc-related triggers, the garbage collector uses the same
     heuristic as the cell-triggered collections.  It may be tuned with
     the environment variable `GUILE_MIN_YIELD_MALLOC'.  This is the
     percentage for minimum yield of malloc-related triggers.  The
     default is forty (40) percent.

     `GUILE_INIT_MALLOC_LIMIT' sets the size in kilobytes of the initial
     trigger for garbage collection.  The default is two hundred (200)
     kilobytes.

`GUILE_MAX_SEGMENT_SIZE'

`GUILE_INIT_SEGMENT_SIZE_2'

`GUILE_INIT_SEGMENT_SIZE_1'

`GUILE_MIN_YIELD_2'
     Debugging operations for the freelist have been deprecated, along
     with the C variables that control garbage collection.  The
     environment variables `GUILE_MAX_SEGMENT_SIZE',
     `GUILE_INIT_SEGMENT_SIZE_2', `GUILE_INIT_SEGMENT_SIZE_1', and
     `GUILE_MIN_YIELD_2' should be used (units: bytes? kilobytes?)

`GUILE_LOAD_COMPILED_PATH'
     This variable may be used to augment the path that is searched for
     compiled Scheme files (`.go' files) when loading.  Its value should
     be a colon-separated list of directories, which will be prefixed
     to the value of the default search path stored in
     `%load-compiled-path'.

     Here is an example using the Bash shell that adds the current
     directory, `.', and the relative directory `../my-library' to
     `%load-compiled-path':

          $ export GUILE_LOAD_COMPILED_PATH=".:../my-library"
          $ guile -c '(display %load-compiled-path) (newline)'
          (. ../my-library /usr/local/lib/guile/2.0/ccache)

`GUILE_LOAD_PATH'
     This variable may be used to augment the path that is searched for
     Scheme files when loading.  Its value should be a colon-separated
     list of directories, which will be prefixed to the value of the
     default search path stored in `%load-path'.

     Here is an example using the Bash shell that adds the current
     directory and the parent of the current directory to `%load-path':

          $ env GUILE_LOAD_PATH=".:.." \
          guile -c '(display %load-path) (newline)'
          (. .. /usr/local/share/guile/2.0 \
          /usr/local/share/guile/site/2.0 \
          /usr/local/share/guile/site /usr/local/share/guile)

     (Note: The line breaks, above, are for documentation purposes
     only, and not required in the actual example.)

`GUILE_SYSTEM_LOAD_COMPILED_PATH'
     Please provide a description of me, or delete me if I am obsolete.

`GUILE_SYSTEM_PATH'
     Please provide a description of me, or delete me if I am obsolete.

`GUILE_SYSTEM_LTDL_PATH'
     Please provide a description of me, or delete me if I am obsolete.

`GUILE_INIT_SEGMENT_SIZE_1'
     The application can set up other default values for the
     garbage-collection heap allocation parameters.  Allocation of
     two-word cell heaps is controlled by the environment variables
     `GUILE_INIT_SEGMENT_SIZE_1' and `GUILE_MIN_YIELD_1'.
     `GUILE_INIT_SEGMENT_SIZE_1' is the size of initial heap segment in
     bytes (default is 360000).

`GUILE_MIN_YIELD_1'
     Minimum number of freed cells at each garbage collection in
     percent of total heap size (default is forty (40) percent).

`GUILE_INIT_SEGMENT_SIZE_2'
     Allocation of four-word cell heaps is controlled by the environment
     variables `GUILE_INIT_SEGMENT_SIZE_2' and `GUILE_MIN_YIELD_2'.
     Four-word cell heaps are used for real numbers and miscellaneous
     other objects.

     Please provide a description of `GUILE_INIT_SEGMENT_SIZE_2'.

`GUILE_MIN_YIELD_2'
     Please provide a description of `GUILE_MIN_YIELD_2'.

`GUILE_MAX_SEGMENT_SIZE'
     Maximal segment size in bytes? kilobytes? (default is 2097000)

`GUILE_INIT_HEAP_SIZE_1'
     Please provide a description of me.

`GUILE_INIT_HEAP_SIZE_2'
     Please provide a description of me.

`GUILE_WARN_DEPRECATED'
     Please provide a description of me.

`HOME'
     Guile uses the environment variable `HOME', the name of your home
     directory, to locate various files, such as `.guile' or
     `.guile_history'.

`LTDL_LIBRARY_PATH'
     Guile now adds its install prefix to the `LTDL_LIBRARY_PATH'.

     Users may now install Guile in non-standard directories and run
     `/path/to/bin/guile', without having also to set
     `LTDL_LIBRARY_PATH' to include `/path/to/lib'.

^ permalink raw reply related	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2011-06-30 11:23 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-23 19:46 Patch: New section "Invoking Guile" for chapter "Programming in Scheme" Mark Harig
2011-04-24 14:33 ` Andy Wingo
2011-04-24 20:36   ` Mark Harig
2011-04-24 21:00     ` Andy Wingo
2011-04-24 21:58       ` Mark Harig
2011-04-25  8:01         ` Andy Wingo
2011-04-24 22:09       ` David Pirotte
2011-04-24 22:43         ` Indexing Scheme and C identifiers separately Mark Harig
2011-04-25  1:18           ` Noah Lavine
2011-04-25 16:16           ` David Pirotte
2011-05-20 22:53             ` Neil Jerram
2011-04-25 19:49       ` Patch: New section "Invoking Guile" for chapter "Programming in Scheme" Mark Harig
2011-04-26 18:07         ` Neil Jerram
2011-04-26 21:01           ` Ludovic Courtès
2011-04-27  9:40             ` Andy Wingo
2011-04-27 10:23               ` Ludovic Courtès
2011-04-27 19:29                 ` Neil Jerram
2011-04-27 16:54           ` Mark Harig
2011-04-27 19:40             ` Neil Jerram
2011-06-30 11:23         ` Andy Wingo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).