mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-28 07:22:27 -08:00
221 lines
6.1 KiB
Groff
221 lines
6.1 KiB
Groff
.TH ECL 1 2016-09-17
|
|
.UC 4
|
|
.SH NAME
|
|
ecl \- Embeddable Common Lisp
|
|
.SH SYNOPSIS
|
|
|
|
\fBecl\fP
|
|
[\fB-?\fP | \fB--help\fP]
|
|
.br
|
|
[\fB--dir\fP \fIdir\fP] [\fB--load\fP \fIfile\fP] [\fB--shell\fP \fIfile\fP] [\fB--eval\fP \fIexpr\fP]
|
|
.br
|
|
[\fB--norc\fP] [\fB--hp\fP | \fB--nohp\fP]
|
|
.br
|
|
[\fB--debug\fP | \fB--nodevbug\fP]
|
|
.br
|
|
[\fB--c-stack\fP \fIsize\fP] [\fB--lisp-stack\fP \fIsize\fP]
|
|
.br
|
|
[\fB--heap-size\fP \fIsize\fP] [\fB--frame-stack\fP \fIsize\fP]
|
|
.br
|
|
[[\fB-o\fP \fIofile\fP] [\fB-c\fP [\fIcfile\fP]] [\fB-h\fP [\fIhfile\fP]] [\fB--data\fP [\fIdatafile\fP]]
|
|
.br
|
|
[\fB-s\fP] [\fB-q\fP] \fB--compile\fP \fIfile\fP]
|
|
.br
|
|
[[\fB-o\fP \fIofile\fP] \fB--link\fP \fIfile\fP+]
|
|
.br
|
|
[\fB--input-encoding\fP \fIexternal-format\fP] [\fB--output-encoding\fP \fIexternal-format\fP]
|
|
.br
|
|
[\fB--error-encoding\fP \fIexternal-format\fP] [\fB--encoding\fP \fIexternal-format\fP]
|
|
.br
|
|
\fBDEPRECATION NOTE:\fP one-dash versions of long flags(e.g. \fB-eval\fP or \fB-data\fP) are deprecated; you should use two-dash versions (e.g. \fB--eval\fP or \fB--data\fP) now.
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.sp
|
|
ECL (Embeddable Common-Lisp) is an interpreter of the Common-Lisp language as described in the X3J13 Ansi specification,
|
|
featuring CLOS (Common-Lisp Object System), conditions, loops,
|
|
etc. plus a translator to C, which can produce standalone executables.
|
|
|
|
ECL supports the operating systems Linux, FreeBSD, NetBSD, OpenBSD, OS X, Solaris and Windows, running on top of the Intel, Sparc, Alpha, PowerPC and ARM processors.
|
|
.PP
|
|
The current ECL implementation features:
|
|
.IP \(bu
|
|
A bytecode compiler and interpreter.
|
|
.IP \(bu
|
|
Compiles Lisp also with any C/C++ compiler
|
|
.IP \(bu
|
|
Can build standalone executables and libraries
|
|
.IP \(bu
|
|
ASDF, Sockets, Gray streams, MOP, and other useful components
|
|
.IP \(bu
|
|
Extremely portable
|
|
.IP \(bu
|
|
A reasonable license
|
|
.PP
|
|
\fBecl\fP without any argument starts the interactive lisp session.
|
|
|
|
.SH OPTIONS
|
|
.TP 1i
|
|
|
|
.B \-?, \-\-help
|
|
Shows the help prompt without running the ECL.
|
|
.TP
|
|
.BI \-\-norc
|
|
Do not load configuration files at startup.
|
|
.TP
|
|
.BI \-\-version
|
|
Prints the current version of ECL, without running the ECL.
|
|
.TP
|
|
.BI \-debug
|
|
Turned on by default, this enables the debugging in the setup phase,
|
|
so that you can debug your files.
|
|
.TP
|
|
.BI \-\-nodebug
|
|
Run without debugging setup phase, meaning that errors prevent ECL from starting up.
|
|
.TP
|
|
.BI \-\-eval " file"
|
|
Evaluate the
|
|
.I file
|
|
before loading the .rc file and starting the Top Level.
|
|
.TP
|
|
.BI \-\-shell " file"
|
|
Executes the given
|
|
.I file
|
|
and exits, without providing a read-eval-print loop.
|
|
If you want to use lisp as a scripting language, you can write
|
|
.BR "#!@bindir@/ecl --shell"
|
|
on the first line of the file to be executed, and then ECL will be
|
|
automatically invoked.
|
|
.TP
|
|
.BI \-\-load " file"
|
|
Load source
|
|
.I file
|
|
before loading the .rc file and starting the Top Level.
|
|
.TP
|
|
.BI \-\-dir " directory"
|
|
Use
|
|
.I directory
|
|
as a system directory.
|
|
.TP
|
|
.BI \-\-heap-size " size"
|
|
Specify heap
|
|
.I size
|
|
in kilobytes.
|
|
.TP
|
|
.BI \-\-lisp-stack " size"
|
|
Specify stack
|
|
.I size
|
|
in kilobytes for lisp system.
|
|
.TP
|
|
.BI \-\-frame-stack " size"
|
|
Specify frame stack
|
|
.I size
|
|
in kilobytes.
|
|
.TP
|
|
.BI \-\-c-stack " size"
|
|
Specify stack
|
|
.I size
|
|
in kilobytes for C compiler.
|
|
.TP
|
|
.BI \-\-trap-fpe
|
|
Make ECL debugger catch floating point exception.
|
|
.TP
|
|
.BI \-\-no-trap-fpe
|
|
Make ECL debugger not catch floating point exception.
|
|
.TP
|
|
.BI \-\-encoding " encoding"
|
|
Specify the external
|
|
.I encoding
|
|
for standard input, output, trace and error.
|
|
.TP
|
|
.BI \-\-input-encoding " encoding"
|
|
Specify the external
|
|
.I encoding
|
|
for standard input.
|
|
.TP
|
|
.BI \-\-output-encoding " encoding"
|
|
Specify the external
|
|
.I encoding
|
|
for standard output.
|
|
.TP
|
|
.BI \-\-error-encoding " encoding"
|
|
Specify the external
|
|
.I encoding
|
|
for standard error.
|
|
.TP
|
|
|
|
.BI \-o " file"
|
|
Provide the output target
|
|
.I file
|
|
for compilation.
|
|
.TP
|
|
.BI \-c " cfile"
|
|
When compiling name the intermediary C file
|
|
.I cfile
|
|
and do not delete it afterwards.
|
|
.TP
|
|
.BI \-h " cfile"
|
|
When compiling name the intermediary C file
|
|
.I cfile
|
|
and do not delete it afterwards.
|
|
.TP
|
|
.BI \-\-data " [datafile]"
|
|
Dumps compiler data into \fIdatafile\fP or, if not
|
|
supplied, into a file named after the source file, but
|
|
with .data as extension.
|
|
.TP
|
|
.BI \-\-compile " file"
|
|
Translates
|
|
.I file
|
|
to C and invokes the local C compiler to produce a
|
|
native code program.
|
|
.TP
|
|
.BI \-q
|
|
Short for quiet - produce less notes.
|
|
.TP
|
|
.BI \-\-hp
|
|
This option is deprecated and doesn't do anything.
|
|
.TP
|
|
.BI \-\-nodp
|
|
This option is deprecated and doesn't do anything.
|
|
.TP
|
|
.BI \-s
|
|
Produce a linkable object file. It cannot be loaded
|
|
with load, but it can be used to build libraries
|
|
or standalone executable programs.
|
|
.TP
|
|
|
|
.SH AUTHORS
|
|
|
|
The original version was developed by Giuseppe Attardi starting from
|
|
the Kyoto Common Lisp implementation by Taiichi Yuasa, Masami
|
|
Hagiya. Further development was lead by Juan Jose Garcia Ripoll. The
|
|
current maintainer of ECL is Daniel Kochmański, who can be reached at
|
|
the ECL mailing list.
|
|
|
|
.SH FILES
|
|
.TP
|
|
.BR "~/.ecl, ~/.eclrc"
|
|
Default initialization files loaded at startup unless the option
|
|
.BR \-\-norc
|
|
is provided.
|
|
(if they exist).
|
|
|
|
.SH SEE ALSO
|
|
.IP ANSI Common Lisp standard X3.226-1994
|
|
.IP The Common Lisp HyperSpec
|
|
|
|
.SH "BUGS"
|
|
Unfortunately it is possible that there are some bugs in the program.
|
|
In case you find any bug, please report it as an issue (after making sure that it hasn't been reported or fixed)
|
|
to official gitlab repository: https://gitlab.com/embeddable-common-lisp/ecl/issues .
|
|
|
|
.SH "LICENSE"
|
|
ECL is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version; see file 'Copying'.
|
|
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Library General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
Please report bugs, comments, suggestions to the ecl mailing list:
|
|
.B ecl-devel@common-lisp.net
|
|
(or use gitlab).
|