Document how to run tests from the command line

I prefer to run the tests from the command line instead of within the REPL. Would a PR adding some instruction to be welcome? I’m thinking about something along the lines of:

## Testing from the command line

Executing the tests from the command line is possible, but it depends on which CL implementation you have chosen. For example, with SBCL you could execute this in the directory for exercise "foo"

sbcl --noinform \
     --load foo-test \
     --eval '(exit :code (if (foo-test:run-tests) 0 1))'

I assume you have installed the chosen implementation and install Quicklisp already. See [Installing Common Lisp locally](

I have also been evaluating GNU CLISP and Clozure CL, so I can provide examples for them.

Yes please! :blue_heart:

Please feel free!

Of course the instructions would be different for different implementations - but using SBCL for the instructions and noting that other implementations will vary is likely sufficient.

I would not including CLISP however - I believe it is abandoned. Still a good implementation - but I don’t think pointing new people at it is useful.

Just a couple of anecdotes about my non-SBCL experience:

I have a couple of recursive solutions (prime-numbers being one) that SBCL handle perfectly and CLISP breaks with stack overflow. My naive brute force pythagorean-triplets runs in about 3 seconds, and CLISP just hung.

With Clozure CL, my OO two-bucket solution broke. I don’t recall the particular error.

1 Like

RE: recursive solutions & stack overflow – remember (or learn :) ) that Common Lisp does not dictate Tail-Call optimization. SBCL does it in certain (many) cases. Not sure if CLISP does it at all.