[Openmcl-devel] Create a CCL image that can quickly load Cocoa using a command-line workflow

Clayton Stanley cstanley at cstanley.no-ip.biz
Wed Jun 12 14:10:29 PDT 2013

I am running a suite of testing code that uses Cocoa in CCL. To make sure
each test is isolated from the others, I would like to launch a CCL
instance for each test, which means I'll need to launch CCL about 15 times
to run all tests.

A (require :cocoa) call on my machine takes about 15 seconds to compile and
load all Cocoa code. This is fine when running a development instance of
CCL through Slime for an entire day, but is too slow when having to do this
15 times to run through the test suite (especially since the time required
for most of the tests to run is less than a second; and I'd like to run the
test suite more often than once a day).

I would like a CCL .image file that has :cocoa loaded in it that I can
launch from the command line when running the tests.

I tried commenting out (gui::start-cocoa-ide) in cocoa-ide/cocoa.lisp. Then
(require :cocoa), then (save-application ...). The idea was to get all
Cocoa lisp code compiled and loaded into the saved core. Then when
launching the modified image, I'd type (gui::start-cocoa-ide), and the
Cocoa window would quickly boot up. But this didn't work. The Cocoa window
doesn't appear on my machine, and CCL becomes unresponsive after calling

Any other ideas?

I can't use the CCL App from the App Store or a double-clickable CCL GUI
Application because I need to be able to launch the ccl image from the
command line. This is so that I can run the test suite from the command
line (so that it can be automated and incorporated into the build scripts),
and also so that the workflow to run the test suite matches a Slime
development workflow, where Slime is simply pointed to a lisp image (and
not a GUI app) when booting up.

Thanks for the help,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20130612/42a4ef15/attachment.htm>

More information about the Openmcl-devel mailing list