Man Linux: Main Page and Category List

NAME

       gosh - a Scheme script interpreter

SYNOPSIS

       gosh  [-biqV]  [-I path ] [-A path ] [-u module ] [-l file ] [-e expr ]
       [-E expr ] [-f flag ] [--] [ script argument ...  ]

DESCRIPTION

       Gosh is a stand-alone Scheme interpreter built on  top  of  the  Gauche
       Scheme script engine.

       When  script is given, gosh loads the script, evaluating Scheme code in
       it.  Then, if the script defines a procedure named main, gosh calls  it
       with  a  single  argument  which  is  a  list  of  the  script name and
       subsequent arguments.  When main returns an integer value,  gosh  exits
       with  it  as  an  exit  code.  If main returns non-integer value, or an
       error is signaled during evaluation,  gosh  exits  with  exit  code  70
       (EX_SOFTWARE).                        See                       SRFI-22
       (http://srfi.schemers.org/srfi-22/srfi-.html)   for   details.     If
       there’s no main procedure defined in the script, gosh exits with code 0
       after loading the script file.

       If no script file is given, gosh goes into  an  interactive  mode.   By
       default,  gosh  prompts the user to enter a Scheme expression, read and
       evaluates it, then prints the  result,  until  EOF  is  read.   If  the
       standard input is not a terminal, however, gosh doesn’t print a prompt;
       it allows a user to use gosh as a filter program.  This behavior can be
       controlled by -i or -b option; see below.

OPTIONS

       Command  line  options  are processed before loading the script file or
       entering the interactive mode.

       The options -I, -A, -u, -l, -L, -e and -E are processed in the order of
       appearance.   For  example, adding a load path by -I option affects the
       -l options after it, but not the ones before it.

       -V   Prints gosh version and exits.

       -b   Batch mode.  Doesn’t print prompt even the  standard  input  is  a
            terminal.  Supersedes -i.

       -i   Interactive mode.  Forces to print prompt, even the standard input
            is not a terminal.

       -q   Prevents reading the default initialization file.

       -Ipath
            Adds path in front of the load path list.

       -Apath
            Appends path to the tail of the load path list.

       -umodule
            Loads and imports module, as if "(use module )"  is  specified  in
            the code.

       -lfile
            Loads a Scheme file file.

       -Lfile
            Like -l, but doesn’t complain if file doesn’t exist.

       -eexpr
            Evaluates a Scheme expression expr.

       -Eexpr
            Same as -e, except that the expr is read as if it is surrounded by
            parenthesis.

       -ptype
            Turns on the profiler.  Currently type can only be ’time’.

       -fflag
            Sets various flags.
              case-fold       uses case-insensitive reader (as in R5RS)
              load-verbose    report while loading files
              no-inline       don’t inline primitive procedures and constants
                              (combined  no-inline-globals,  no-inline-locals,
            and
                              no-inline-constants.)
              no-inline-globals don’t inline global procedures.
              no-inline-locals  don’t inline local procedures.
              no-inline-constants don’t inline constants.
              no-post-inline-pass don’t run post-inline optimization pass.

       -Ffeature
            Makes feature available in cond-expand forms.

       --   Specifies  that  there  are  no  more  options.  If there are more
            arguments after this, they are taken as script file name  and  its
            arguments.

ENVIRONMENT

       GAUCHE_LOAD_PATH
              A  colon  separated  list  of  the  load  paths.   The paths are
              appended before the system default load paths.

       GAUCHE_DYNLOAD_PATH
              A colon separated list of the load paths for dynamically  loaded
              objects.   The paths are appended before the system default load
              paths.

AUTHORS

       Shiro Kawai (shiro @ acm . org)

SEE ALSO

       gauche-config(1)

       Gauche Scheme script engine:
       http://practical-scheme.net/gauche/

       For the information about Scheme language, see
       http://www.schemers.org/