The lisp kernel (ccl/ppccl under LinuxPPC,
ccl/dppccl under DarwinPPC) can be invoked as:
% ppccl [options]
% ppccl image-name
% dppccl [options]
% dppccl image-name
The --help option will summarize the syntax of the
options recognized by the current release.
Under LinuxPPC, the image-name defaults to the
lisp kernel pathname with the case of its last component inverted
(e.g., ccl/PPCCL).
Under DarwinPPC, the image-name defaults to the
lisp kernel pathname with the string ".image" appended
(e.g., ccl/dppccl.image). Since Darwin/MacOS X installations
use HFS+ filesystems - which are case-insensitive - by default, the
case-inverting conventions used under Linux wouldn"t work very
well.
The OpenMCL shell script passes all of its arguments to the lisp kernel. For a variety of reasons, it's probably simpler to use that shell script than it is to invoke the kernel directly.
The exact set of command-line arguments accepted by OpenMCL may
vary slightly from release to release; "openmcl --help
is hopefully a definitive (if somewhat terse) summary of the
options accepted by the current implementation. Some of those
options aren't well documented elsewhere and are described below.
-S (or --stack-size). Specify the
size of the initial process stack.
-b (or --batch). Execute in "batch
mode". End-of-file from *STANDARD-INPUT* will
cause OpenMCL to exit, as will attempts to enter a break loop.
-n (or --no-init). By default,
OpenMCL will try to execute (load
"home:openmcl-init") (and fail silently if neither a
.lisp or FASL version of that file exists.) This option suppresses
that behavior.
-e <form> (or --eval
<form>). An expression is read (via
READ-FROM-STRING from the string <form>
and evaluated. If <form> contains shell metacharacters,
it may be necessary to escape or quote them to prevent the
shell from interpreting them.
-l >path> (or --load <path>).
Executes (load "<path>").
The --load and --eval options can each
be provided multiple times. They're executed in the order
specified on the command line, after the init file is (possibly)
loaded and before the toplevel read-eval-print loop is entered.