[mac-lisp-ide] Where /is/ everyone?

mikel evins mikel at evins.net
Tue Mar 23 17:04:37 UTC 2004


On Mar 23, 2004, at 8:16 AM, Brian Mastenbrook wrote:

> Greetings all,
>
> This list has been dead for a while, so I'm wondering where everyone 
> is? As I recall people were working on a few cool things: Clotho, 
> McCLIM/Cocoa, and SBCL/PPC callbacks for Carbon. I'd love to know how 
> people have been doing on these!
>

Paul Lathrop got cvs access to Clotho and has added several small 
enhancements.

I got Hamilton Link's express permission to include his inspector in 
Clotho, and to adapt it however we see fit.

I wrote a syntax-coloring algorithm which seems acceptably fast, but 
needs some further debugging. I've had a little discussion with Gary 
and Randall about possible improvements to the Cocoa bridge, the goal 
being to solve the present problem that applications built with the 
bridge are tied to specific OS versions (for example, the recent 
release of OS X 10.3.3 required a recompile of Bosco-based apps; this 
seems a rather large inconvenience for anyone who wants to deliver an 
application based on the bridge).

I spent a little time experimenting with various approaches to hooking 
OSX's event and threading frameworks at a lower level than Cocoa; next 
I plan to experiment with building SLIME's swank server into Bosco. The 
goal is to make it easier to control and augment Bosco-based apps 
(including Clotho and McCLIM.app) from an Emacs session.

Duncan Rose and I merged McCLIM code and he made some further 
improvements to rendering (and fixed a bug I introduced in 
event-handling). I'm told I have commit privileges on the repository, 
but haven't yet checked in our code.

I haven't advanced either of these projects in a couple of weeks 
because I've spent too much time on other things (notably, on writing 
code for the people who pay my salary). That will change soon, but I 
feel like I owe some time to the Hansa project, so I'm working on its 
game server right now. When I get to a stopping place on that, I need 
to spend a little time on Kenny Tilton's Cello, to see how hard it is 
to get it to build with OpenMCL.

Then I mean to return to McCLIM and Clotho. I have in mind to debug and 
merge in Clotho's syntax-coloring code and then move on to a list of 
things that I think need to be done. I encourage any interested readers 
of this list to pitch in.

Here's the list I sent to Paul Lathrop a little while back, with a few 
annotations. Paul's interested inn working on at least some of these.

BUGS
----

- the application occasionally hangs or crashes; the cause of these 
anomalies needs investigation

   [this one seems to be fixed in the latest cvs version]

- the build breaks at SAVE-APPLICATION about half the time, dropping 
into the Lisp kernel debugger. Continuing results in a good build, but 
it's very annoying. The likely cause is known, but we haven't figured 
out a better workaround than continuing from the kernel debugger. A 
better fix would be a great contribution.

   [this is a little better in recent cvs versions of OpenMCL]

ADD-ONS
-------

- a recent addition is Hamilton Link's Cocoa inspector. It has a fine 
windowing UI, but there is no UI to invoke it. Invention and 
construction of UI to inspect arbitrary text would be nice. So would 
extensions to (and of course bug-hunting in) the inspector itself.

- Gary Byers has made a partial port of Portable Hemlock to Cocoa. 
Completing that port and integrating it with Clotho would be a great 
improvement.

- I'd like to use Albert or something similar to generate documentation 
from the project. Albert does not presently work with the Clotho 
codebase. It would be great if someone could either teach Albert how to 
read Clotho's code or, in the worst case, write another tool that could 
do the job.

- integrating any level of in-app support for Apple's OpenGL 
implementation would be nice.

- trolling for and integrating other third-party extensions would be 
very useful.

CODE BEAUTIFICATION
-------------------

- the code for the listener and inspector are minimally changed from 
the Cocoa example code. Someone needs to read through it, look for 
opportunities to refactor, improve package organization, look for dead 
code, document undocumented code, check for unexported symbols that 
need to be exported and vice versa, move generally useful utilities 
into more generally-accessible places in the build, and just generally 
make the code prettier and better factored wherever that can be done.

TESTS
-----

- It would be awfully nice to get a unit-testing framework set up and 
build some suitable unit and integration tests for the various parts of 
Clotho. Clotho's pretty simple right now, but it won't be long before 
I'm going to want to see test results before deciding to release new 
versions.

[I've used the xptest package in other projects; I think it would be 
fine for use in Clotho]

NEW FEATURES
------------

There are a zillion that I think would be a good idea, but here are the 
short-term highlights, things I'd like to see getting implemented soon:

- a nibfile reader/writer
	I'd like some Lisp code that can read and write nibfiles, to form the 
basis of Lisp-based tools to help build UIs with Clotho.

[A few weeks back I hacked up a very simple reader; it was pretty easy. 
I think this would be a good starter project for someone with at least 
a little familiarity with either Lisp or Cocoa or both.]

- a template-based Application bundle builder
	I want some tools that can construct a properly formed application 
bundle and put the Info.plist and other resource files in the right 
place, and fill in the contents from templates. The idea is that I want 
you to be able to pick "New Project" from a menu and have Clotho build 
the application bundle with the right names and version numbers and 
copyright info and all the rest, gathered from a dialog with the user.

[This one should be pretty straightforward grunt work.]

- version-control client code
	I'd like Clotho to be able to work with some suitable version control 
system (probably CVS, but I'd be open to discussing something like 
Arch) in a nice, integrated fashion

[I have recent sources for metacvs and have promised to see if I can 
get OpenMCL to build it. If I can, then it might be interesting to 
integrate it with Clotho.]

- syntax coloring
	I've got some syntax-coloring code partly built that is pretty fast 
(though as-yet unoptimized), but really doing it well is tricky. I 
wouldn't mind help with it if someone is very clever about it and 
willing to fuss will all the hairy edge cases, and get it integrated 
with the UI.

[This is mostly done; there are two bugs to fix, one in handling 
strings in certain funny cases (e.g. when some form contains a literal 
#\"), and one in the interaction between the TextView and LayoutManager 
when applying the styles.]

- documentation support
	Besides generating documentation, I'd like to get some support for 
nicely-integrated documentation readers, so that people can search the 
Common Lisp Hyperspec from within Clotho, with a keystroke, and so that 
you can quickly and easily search Clotho-specific and project-specific 
documentation.

- browsing tools
	Class browsers, cross-referencers, change-managers; I'd like to see 
all these get built in.

- debugger
	Decent integration between the GUI and the OpenMCL debugger would be a 
big win, and fairly tricky to implement.

- Cocoa preferences support
	Clotho needs to write several user preferences to disk and read them 
on launch. Obvious first things to support are font and syntax-color 
preferences, init file name, and starting image.





More information about the Mac-lisp-ide mailing list