-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
README.mess
83 lines (65 loc) · 2.13 KB
/
README.mess
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
## About CL-ALL
This is a simple script to run a Lisp snippet in locally installed lisp implementations. Requires at least SBCL.
## How To
You can either build a fixed SBCL binary with ``make``, or symlink ``cl-all.lisp`` to ``cl-all``. Either way, once ``cl-all`` is in your path:
::
cl-all '(print :hi)'
cl-all sbcl ecl '(print "Oh man!")'
cl-all --print '"Oh man"'
cl-all --file "something.lisp"
echo ":stdin" | cl-all --print
::
You can also load this system into your SBCL session and use it from the comfort of the REPL:
:: common-lisp
(cl-all:eval-in-lisp :ecl "(print call-arguments-limit)")
::
## Example Output
::
$ cl-all --print call-arguments-limit
--> ABCL: 50
--> Allegro: 16384
--> CCL: 65536
--> CLisp: 4096
--> CMUCL: 536870911
--> ECL: 65536
--> MKCL: 2305843009213693951
--> SBCL: 4611686018427387903
::
## CLI Reference
::
cl-all (implementation | option | snippet)*
implementation:
The given implementation is run. If no implementations are
explicitly specified, all known and available implementations
are used. See -l for a list of available implementations.
option:
--print -p Causes the last form's value to be printed.
Will also trim extraneous whitespace from the
output.
--file -f Uses the given file as input.
--eval -e Evaluates the given expression.
--disassemble -d Compiles and prints the disassembly of the
expressions.
--no-rc -n Do not run implementation init files.
--lisps -l List all known and available implementations
and exit.
--help -h Show this usage prompt and exit.
-- All further arguments are used as tokens to be
evaluated, concatenated by spaces.
snippet:
A lisp snippet to be evaluated.
If no snippet, file, or eval option is given, the standard input is
used to read forms from. Forms are read until EOF is encountered
::
## Known Implementations
- ABCL
- Allegro
- CCL
- Clasp
- Clisp
- CMUCL
- ECL
- GCL
- JSCL
- MKCL
- SBCL