guile-devel
[Top][All Lists]
Advanced

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

[PATCH 5/5] Remove statements about scripts/* that are no longer true


From: Neil Jerram
Subject: [PATCH 5/5] Remove statements about scripts/* that are no longer true
Date: Mon, 21 Mar 2011 22:19:21 +0000

* doc/ref/tools.texi (Executable Modules): Say "guile-tools modules"
  instead of "executable modules".  Remove obsolete statements about
  not ending in .scm, being executable, and beginning with shell
  script invocation sequence.

* module/scripts/README: Ditto.
---
 doc/ref/tools.texi    |   33 +++++++--------------------------
 module/scripts/README |   23 +++++------------------
 2 files changed, 12 insertions(+), 44 deletions(-)

diff --git a/doc/ref/tools.texi b/doc/ref/tools.texi
index 2f4f59a..7a98884 100644
--- a/doc/ref/tools.texi
+++ b/doc/ref/tools.texi
@@ -303,14 +303,11 @@ is rather byzantine, so for now @emph{NO} doc snarfing 
programs are installed.
 @cindex executable modules
 @cindex scripts
 
-When Guile is installed, in addition to the @code{(ice-9 FOO)} modules,
-a set of @dfn{executable modules} @code{(scripts BAR)} is also installed.
-Each is a regular Scheme module that has some additional packaging so
-that it can be called as a program in its own right, from the shell.  For this
-reason, we sometimes use the term @dfn{script} in this context to mean the
-same thing.
-
address@hidden wow look at this hole^!  variable-width font users eat your 
heart out.
+When Guile is installed, in addition to the @code{(ice-9 FOO)} modules, a set
+of @dfn{guile-tools modules} @code{(scripts BAR)} is also installed.  Each is
+a regular Scheme module that has some additional packaging so that it can be
+used by guile-tools, from the shell.  For this reason, we sometimes use the
+term @dfn{script} in this context to mean the same thing.
 
 As a convenience, the @code{guile-tools} wrapper program is installed along w/
 @code{guile}; it knows where a particular module is installed and calls it
@@ -346,17 +343,11 @@ executable module.  Feel free to skip to the next chapter.
 
 See template file @code{PROGRAM} for a quick start.
 
-Programs must follow the @dfn{executable module} convention, documented here:
+Programs must follow the @dfn{guile-tools} convention, documented here:
 
 @itemize
 
 @item
-The file name must not end in ".scm".
-
address@hidden
-The file must be executable (chmod +x).
-
address@hidden
 The module name must be "(scripts PROGRAM)".  A procedure named PROGRAM w/
 signature "(PROGRAM . args)" must be exported.  Basically, use some variant
 of the form:
@@ -377,20 +368,10 @@ There must be the alias:
 
 However, `main' must NOT be exported.
 
address@hidden
-The beginning of the file must use the following invocation sequence:
-
address@hidden
-#!/bin/sh
-main='(module-ref (resolve-module '\''(scripts PROGRAM)) '\'main')'
-exec address@hidden@} -l $0 -c "(apply $main (cdr (command-line)))" "$@@"
-!#
address@hidden example
-
 @end itemize
 
 Following these conventions allows the program file to be used as module
address@hidden(scripts PROGRAM)} in addition to as a standalone executable.  
Please
address@hidden(scripts PROGRAM)} in addition to being invoked by guile-tools.  
Please
 also include a helpful Commentary section w/ some usage info.
 
 @c tools.texi ends here
diff --git a/module/scripts/README b/module/scripts/README
index 56dd286..cb397f5 100644
--- a/module/scripts/README
+++ b/module/scripts/README
@@ -4,9 +4,9 @@ Overview and Usage
 This directory contains Scheme programs, some useful in maintaining Guile.
 On "make install", these programs are copied to PKGDATADIR/VERSION/scripts.
 
-You can invoke a program from the shell, or alternatively, load its file
-as a Guile Scheme module, and use its exported procedure(s) from Scheme code.
-Typically for any PROGRAM:
+You can use guile-tools to invoke a program from the shell, or alternatively,
+load its file as a Guile Scheme module, and use its exported procedure(s)
+from Scheme code.  Typically for any PROGRAM:
 
   (use-modules (scripts PROGRAM))
   (PROGRAM ARG1 ARG2 ...)
@@ -22,8 +22,6 @@ To see PROGRAM's commentary, which may or may not be helpful:
 
   (help (scripts PROGRAM))
 
-To see all commentaries and module dependencies, try: "make overview".
-
 If you want to try the programs before installing Guile, you will probably
 need to set environment variable GUILE_LOAD_PATH to be the parent directory.
 This can be done in Bourne-compatible shells like so:
@@ -40,11 +38,7 @@ How to Contribute
 
 See template file PROGRAM for a quick start.
 
-Programs must follow the "executable module" convention, documented here:
-
-- The file name must not end in ".scm".
-
-- The file must be executable (chmod +x).
+Programs must follow the "guile-tools" convention, documented here:
 
 - The module name must be "(scripts PROGRAM)".  A procedure named PROGRAM w/
   signature "(PROGRAM . args)" must be exported.  Basically, use some variant
@@ -61,15 +55,8 @@ Programs must follow the "executable module" convention, 
documented here:
 
   However, `main' must NOT be exported.
 
-- The beginning of the file must use the following invocation sequence:
-
-  #!/bin/sh
-  main='(module-ref (resolve-module '\''(scripts PROGRAM)) '\'main')'
-  exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
-  !#
-
 Following these conventions allows the program file to be used as module
-(scripts PROGRAM) in addition to as a standalone executable.  Please also
+(scripts PROGRAM) in addition to being invoked by guile-tools.  Please also
 include a helpful Commentary section w/ some usage info.
 
 
-- 
1.7.1




reply via email to

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