Provided by: gauche_0.9.10-3build1_amd64 bug

NAME

       gosh - a Scheme script interpreter

SYNOPSIS

       gosh [-bhiqV] [-I path ] [-A path ] [-u module ] [-l file ] [-L file ] [-e expr ] [-E expr
       ] [-m module ] [-f flag ] [-F feature ] [-p type ] [-r standard ] [--] [  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-22.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.

       -h   Print help message to stdout and exit with 0.

       -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.

       -mmodule
            When  the script file is given, this option specifies the name of the module in which
            the "main" procedure is defined.  The default is "user".

       -ptype
            Turns on the profiler.  Type can be either 'time' or 'load'.

       -rstandard
            Starts gosh with the default environment defined in RnRS, where n  is  determined  by
            standard.  Currently, only 7 is the valid value of standard.

       -vversion
            If  version  is  not  the  running  Gauche's  version,  but the specified verision is
            installed in the system, execute taht version's gosh instead.  This  is  useful  when
            you want to invoke a specific version of Gauche.  The version must be 0.9.6 or later.

       -fflag
            Sets various flags.
              case-fold       use case-insensitive reader (as in R5RS)
              load-verbose    report while loading files
              include-verbose report while including files
              no-inline       don't inline primitive procedures and constants
                              (combined no-inline-globals, no-inline-locals,
                              no-inline-constants and no-inline-setters.)
              no-inline-globals don't inline global procedures.
              no-inline-locals  don't inline local procedures.
              no-inline-constants don't inline constants.
              no-inline-setters don't inline setters.
              no-post-inline-pass don't run post-inline optimization pass.
              no-lambda-lifting-pass don't run lambda lifting optimization pass.
              no-post-inline-pass  don't run post-inline optimization pass.
              no-source-info  don't retain source information.
              read-edit       enable input editing mode, if terminal supports it.
              no-read-edit    disable input editing mode.
              safe-string-cursors performs extra validation for use of string cursors.
              warn-legacy-syntax print warning when legacy Gauche syntax
                              is encountered.
              test            assume being run in the build tree; tries to
                              load files from the current build instead of
                              installation directories.  Useful to test
                              the build without installation.

       -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:
       https://practical-scheme.net/gauche/

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