~ chicken-core (master) /csi.mdoc
Trap1.\" Copyright (c) 2007-2022, The CHICKEN Team
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\" notice, this list of conditions and the following disclaimer in the
11.\" documentation and/or other materials provided with the distribution.
12.\" 3. The name of the authors may not be used to endorse or promote products
13.\" derived from this software without specific prior written permission.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18.\" IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25.\"
26.\"
27.Dd Apr 26, 2017
28.Dt CSI 1
29.Os
30.Sh NAME
31.Nm csi
32.Nd The CHICKEN Scheme interpreter
33.Sh SYNOPSIS
34.Nm
35.Op Ar OPTION ...
36.Op Ar FILENAME ...
37.Sh DESCRIPTION
38.Nm
39is an interpreter for the programming language Scheme supporting most of
40the features as described in the Revised^5 Report on the Algorithmic
41Language Scheme.
42.Nm
43is implemented as a program compiled with the CHICKEN compiler.
44.Pp
45.Ar FILENAME
46is a Scheme source file name with optional extension.
47.Ar OPTION
48may be one of the following:
49.Bl -tag -width Ds
50.It Fl h , Fl help
51Display usage and exit.
52.It Fl version
53Display version and exit.
54.It Fl release
55Print release number and exit.
56.It Fl i , Fl case-insensitive
57Enable case-insensitive reading.
58.It Fl e Ar EXPRESSION , Fl eval Ar EXPRESSION
59Evaluate the given expression.
60.It Fl p Ar EXPRESSION , Fl print Ar EXPRESSION
61Evaluate and print the result(s) of the given expression.
62.It Fl P Ar EXPRESSION , Fl pretty-print Ar EXPRESSION
63Evaluate and print result(s) prettily.
64.It Fl D Ar SYMBOL , Fl feature Ar SYMBOL
65Register feature identifier.
66.It Fl no-feature Ar SYMBOL
67Disable built-in feature identifier.
68.It Fl q , Fl quiet
69Do not print banner.
70.It Fl n , Fl no-init
71Do not load initialization file.
72.Sq .csirc
73.It Fl b , Fl batch
74Terminate after command-line processing.
75.It Fl w , Fl no-warnings
76Disable all warnings.
77.It Fl K Ar STYLE , Fl keyword-style Ar STYLE
78Enable alternative keyword-syntax
79.Po prefix, suffix or none Pc
80.It Fl no-parentheses-synonyms
81Disable list delimiter synonyms.
82.It Fl r7rs-syntax
83Disable the CHICKEN extensions to R7RS syntax.
84.It Fl s Ar PATHNAME , Fl script Ar PATHNAME
85Use interpreter for shell scripts.
86.It Fl ss Ar PATHNAME
87Run a script with a
88.Sq main
89procedure
90.It Fl sx Ar PATHNAME
91Same as
92.Fl s ,
93but print each expression as it is evaluated.
94.It Fl setup-mode
95Prefer the current directory when locating extensions.
96.It Fl R Ar NAME , Fl require-extension Ar NAME
97Import extension before executing code.
98.It Fl I Ar PATHNAME , Fl include-path Ar PATHNAME
99Add
100.Ar PATHNAME
101to the include path.
102.It Fl -
103Ignore all following options.
104.El
105.Sh ENVIRONMENT
106The following environment variables change the behaviour of
107.Nm Ns :
108.Bl -tag -width CHICKEN_INCLUDE_PATH
109.It Ev CSI_OPTIONS
110When set to a string of command-line options, then the options are
111passed implicitly to every direct or indirect invocation of
112.Nm . Note that runtime options of the form
113.Sq \&-: Ns Aq OPTIONS
114cannot be passed using this method.
115.It Ev CHICKEN_INCLUDE_PATH
116Contains one or more pathnames where the interpreter should also look
117for include files, separated by
118.Sq \&;
119characters.
120.El
121.Sh FILES
122.Bl -tag -width 4n
123.It Pa $XDG_CONFIG_HOME/chicken/csirc
124Scheme file loaded on startup. (
125.Ev $XDG_CONFIG_HOME
126defaults to
127.Pa $HOME/.config
128)
129.It Pa $HOME/.csirc
130Scheme file loaded on startup if the previous one doesn’t exists.
131.El
132.Sh EXIT STATUS
133.Ex -std
134.Sh SEE ALSO
135.Xr chicken 1 ,
136.Xr csc 1
137.Pp
138More information can be found in the
139.Lk http://wiki.call-cc.org/manual/index "CHICKEN User's Manual".
140.Sh AUTHORS
141.An The CHICKEN Team
142.Sh BUGS
143Submit bug reports by e-mail to
144.Mt chicken-janitors@nongnu.org