[pro] Are you an Imager or a Filer?

Attila Lendvai attila.lendvai at gmail.com
Thu Feb 10 22:01:35 UTC 2011


lately i'm 99% imager both for development and deployment. most of the
time i start from an image that contains all the dependencies we have
except the hu.dwim.* stuff and swank.

i don't initiate a reload when the image is started. if i need to do
nontrivial work on a dependency, then i just start slime with a
vanilla SBCL.


startup time does matter for me because:

 - we have 80+ dependencies, a full recompile takes long minutes even
on new hardware

 - it's easy to lose track of what's the state of the heap and i've
debugged ghosts often enough to just simply restart and reload as a
first step whenever there's something that baffles me.

 - CL has complex load-time/compile-time semantics, and some
components (e.g. ASDF) are quite naive regarding this which doesn't
help. i have often experienced that what i've done to the heap using
redefinitions cannot be loaded from files out of the box. long
sessions without a reload mean longer cleanups afterwards when loading
from files fail.


relevant sources (http://dwim.hu/darcsweb/darcsweb.cgi):

 - hu.dwim.build - the CL build app, similar to Xach's buildapp. it
can build itself into an executable.

 - hu.dwim.environment - emacs/ for the way emacs/slime is set up;
etc/server-scripts for the posix services of production images

production.lisp files throughout our projects. they add something to
the way the production images are started.

-- 
 attila

Notice your eroding (digital) freedom, and do something about it!
PGP: 2FA1 A9DC 9C1E BA25 A59C  963F 5D5F 45C7 DFCD 0A39
OTR XMPP: 8647EEAC EA30FEEF E1B55146 573E52EE 21B1FF06




More information about the pro mailing list