stklos - An efficient Scheme System providing a powerful Object
System
SYNOPSYS
stklos [OPTION ...] [ARGUMENT ... ]
DESCRIPTION
STklos
is a free Scheme System (nearly) conforming to R5RS. The aim of this
implementation is to be fast as well as light. The implementation is
based on an ad-hoc Virtual Machine.
STklos
can also be compiled as a library, so that one can easily embed it
in an application.
The salient points of STklos are:
-
- an efficient and powerful object system based on CLOS providing:
-
+ Multiple Inheritance,
-
+ Generic Functions,
-
+ Multi-methods
-
+ an efficient MOP (Meta Object Protocol)
-
- a simple to use module system
-
- implementing the full tower of numbers defined in R5RS
-
- an easy connection to the GTK+ toolkit
-
- Perl compatible regular expressions thanks to the PCRE package
-
- properly implemented tail recursive calls
OPTIONS
Here are the options available in the version @VERSION@ of
stklos.
- -l file, --load=file
-
load 'file' before going interactive
- -f file, --file=file
-
use 'file' as program
- -I dir
-
prepend 'dir' to the directory path. This option can be used several
times.
- -A dir
-
append 'dir' to the directory path. This option can be used several
times.
- -e sexpr, --execute=sexpr
-
evaluate the given sexpr and exit
- -b file, --boot-file=file
-
use 'file' to boot the system instead of the default one
- -D directory, --conf-dir=directory
-
use the given directory to store the various configuration files. This
directory is also used to store the packages installed with the
stklos-pkg(1) command. Note that the shell variable
STKLOS_CONFDIR can also be used to set this directory (see below).
- -q, --no-init-file
-
quiet: do not load the user init file
- -i, --interactive
-
be interactive, even if the command finds it is not the case. This
option is generally useful when used inside emacs since it permits to
display the REPL prompts.
- -n, --no-line-editor
-
tell the REPL to not use the line editor even if GNU readline or BSD
libedit libraries are found. This permit to use an external tool such
as rlwrap(1) instead of the internal line editor support.
- -d, --debug
-
insert informations to ease debugging (e.g, line numbers, signaling
usage of undefined symbols, ...). Can be used multiple times to
increase the debugging level;
- -s, --stack-size=n
-
use a stack of n cells.
- --case-insensitive
-
be case insensitive as in R5RS (see below).
- -c, --case-sensitive
-
be case sensitive as in R7RS. This is the default value (unless stklos
has been built with the --enable-case-insensitive configure
option). This option (and the previous one) permits to change the default
behavior.
- -u yes|no, --utf8-encoding=yes|no
-
At initialisation time, STklos infers the current locale from the
LC_ALL variable. From the character encoding used in the selected
locale, STklos determines if UTF-8 should be used for representing
strings.
The --utf8-encoding permits to force the encoding used. Note
that if LC_ALL is unset and this option is not used, UTF-8
encoding will be used.
- -v, --version
-
print program version and exit.
- -V
-
print detailed program version and information in machine-readable format,
as per SRFI-176, and exit.
- -h, --help
-
print this help and exit.
- --
-
This special option signals the end of the stklos command. The
arguments placed after this option are taken as program arguments,
even if they start with a "-" character.
NOTES
Default case sensitivity depends on the way STklos is built.
ENVIRONMENT VARIABLES
- STKLOS_LOAD_PATH
-
This is a colon-separated list of directories in which stklos
looks for loading files. It is used by functions such as load
or try-load.
- STKLOS_FRAMES
-
This variable must contains an integer which indicates the number of
frames printed on an error. Use the value 0 for an unlimited
back-trace.
- STKLOS_CONFDIR
-
This variable can be used to designate the directory used by stklos
to store its configuration or packages files. It not set, the default
stklos configuration directory is by default ~/.stklos.
FILES
- ~/<stklos-conf-dir>/stklosrc
-
This file is the user init file which is loaded when stklos
starts. Use the -q to avoid the loading of this file.
SEE ALSO
stklos-config(1),
stklos-compile(1),
stklos-pkg(1)
The full documentation for
stklos
is available at http://www.stklos.net/documentation.html
Markup created by unroff 1.0sc, March 04, 2023.