[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