Re: How do people actually develop code using LispWorks
On November 23, 2004 11:29 am, Bob Hutchison wrote:
> How do you folks actually use LispWorks on a day-to-day basis?
I use the IDE, and keep a copy of emacs floating around.
The IDE has too much functionality to throw away - stepper / break / debug,
dbl-click on debug stack to jump to source, dbl-click on variables to bring
up the inspector, built-in tags (esc-.), etc.
I add the lines [*]
(proclaim '(optimize (debug 3) (safety 3) (speed 0) (space 0)))
(declaim (optimize (debug 3) (safety 3) (speed 0) (space 0)))
to the top of my @make files to get the maximum detail out of the debugger.
When I want to write lots of new code, I use emacs. Emacs does at least two
things much better than the LW Editor:
(a) it can split the screen, which I use for having two views of the same
buffer (when I want to check something, but don't want to lose my place / my
train of thought) - two (non-split) windows does not even come close to this
capability and
(b) emacs does not use pesky dialogs (e.g. file completion is unobtrusive in
emacs, but a huge pain in the LW Editor (esp. under clunky lesstif/motif).
I'm weaning myself off of the evils of OO programming, so things like the
class browser are rarely used by me.
pt
[*] I do two possibly-strange things that someone might want to help disabuse
me of:
(1) I don't use the LW system browser, asdf or defsystem because they all seem
(to me) to be clunkier than a unix-like make (esp. when you have a make-make)
or an IDE which builds the makefile for you. It seems just as easy to create
an @make.lisp file (the '@' ensures that the filename appears at the top of
the sorted list of files in a file browser) containing
(compile-file ... :load t) commands as it is to goof around manually
constructing a system / asdf file. My method has the drawback that I
recompile everything when I start up (while having coffee and reading
www.whatreallyhappened.com). Have I simply missed some powerful way of
automatically producing system / asdf files?
(2) The proclaim / declaim lines above don't do antying unless I explicitly
^X^E them. Why? How do I fix it so that max debug / min speed-space is
automatically turned on?