[mac-lisp-ide] Extending clotho
mikel evins
mikel at evins.net
Wed Feb 4 21:55:47 UTC 2004
Clotho is now a functioning project on common-lisp.net. Clotho 0.1 is
available and it builds and runs, but it's obviously very spartan in
its current form. It seems appropriate to discuss what to do to it next
to evolve it toward being a good Lisp development environment for Mac
OS X.
Here are my Top 5 desiderata for Clotho. Feel free to debate the merits
of these, or the approaches I suggest for carrying them out, or to add
other things you'd like to see.
1. Editor
Clotho presently has only a very rudimentary editor, and only in its
Listener window. It would be fairly straightforward to splice in the
plain-text editor from Alpaca, which would have the advantages of being
quick and easy, and of providing the same Emacs-like key-binding API
that Alpaca uses.
I could probably do that in an afternoon, but before I do, I'm going
to have a bash at splicing in Portable Hemlock. I have Gary's sources
from the OpenMCL bleeding-edge branch and have had a look through them.
Gary accomplished the initial task of building hemlock without X11, and
has wired it up to act as a text-storage layer in place of the normal
Cocoa text storage. I can't use his sources unchanged because they rely
on some of the new Objective C/CLOS work he and Randall Beers are doing
for the next release, but I'm not discouraged; there isn't all that
much code. I expect I'll experiment with it some time soon and decide
whether it's better to wait for the next OpenMCL release or go ahead
and try building a Hemlock-based editor into Clotho now.
2. Inspector
Another obvious choice would be to work on splicing Hamilton Link's
windowing inspector into Clotho. That also shouldn't take too long, and
I think it's a good idea. I expect I'll do it soon if someone else
doesn't.
3. Resource Manager
As I've mentioned before, I'd like to see a few tools in Clotho that
can read and write nibfiles, because of their importance in the Cocoa
programming world. I'd like to see more tools than that, actually; one
of the projects I worked on at Apple, SK8, extended MCL to provide
fairly impressive viewers and editors for images, movies, sounds, and
so on. Resource viewers and editors are a lot of work, so II sort of
expect tools like this to be an ongoing project.
4. Debugger
Clearly it's desirable to have a stepper and a debugger that can
control breakpoints and display and edit stack frames in a nice way.
5. Application Builder
The way things are right now you could use Clotho+Emacs to build a
working application in about the same way I used Bosco+Emacs to build
Clotho. That's kind of crude and not especially Lispy, though. Better
would be if you could launch Clotho, write a bunch of Lisp code, and
then ask Clotho to make a new application bundle with all the right
resource files in the bundle. Then you could build your Whizzy app in
Clotho, ask CClotho to save Whizzy.app and, abracadabra! you would have
a new application ready to launch. That involves writing some code to
make the application bundle, to get names and other strings from the
user somehow and write them into the plist files, and so on.
--me
More information about the Mac-lisp-ide
mailing list