April 22, 2003
Mikel Evins is working on a text editor for authors, Alpaca:
it's a Mac OS X application that combines two very different kinds of features: a mac-like interface and all that goes with it, with emacs programmability and all that goes with it.
alpaca is written in common lisp using the cocoa application framework. i wrote it with openmcl. alpaca has a complete common lisp compiler built into it, and can be customized and extended using lisp code.
Update: Alpaca screenshots.
Posted by jjwiseman at April 22, 2003 09:01 AM
Between lemonodor and openmcl-dev, my poor little cube is getting hammered! Who knew a simple lisp-programmable text editor, whose target audience is me, would attract so much attention?
Not that I mind.
People should be aware that Alpaca 0.2.1 is basically TextEdit minus a few features, but with OpenMCL (complete with listener window) built into it. You can certainly use it to edit and print rtf files, but the source code is probably more interesting to most lisp programmers than the app itself. That source is quite small and simple at the moment, and interesting chiefly because it serves as a HOWTO for creating Cocoa applications in OpenMCL.
If you get it for that reason be sure to grab the build instructions; they'll save you a lot of time.
Forgive me, but I don't want to add more things to my wheezing cube right now that will attract even more attention. It's on a lowly residential DSL line.
Anyway, all you'd see is something that looks like TextEdit (the OSX RTF editor), but with a "Lisp" menu and listener.
Oh, and an ".alpaca" file with stuff in it like
(define-key *keymap* "C-f" 'forward-char)
I remember hearing Douglas Adams (of Hitchhiker fame) speak once and his mentioning that he didn't think word processors took the needs of professional writers much into account. I'm as interested in Alpaca's features for authors as I am in its Lispness. I look forward to future releases.
Well, really, its planned features are targeted to one professional writer in particular: me.
But if you want what I want, great. And if I get far enough through the features I want for myself that other people's ideas start to look interesting, that's great too.
Oh, and Alpaca's been downloaded a couple hundred times now. And the cube fell over. I'll try to have it back upright again soon.
Why not put it up on SourceForge?
A fine plan. An excellent plan. Not time to do that yet.
The cube lives again, but I'm still fussing with its configuration a bit, so don't bother looking at it yet. You'll just get a random sequence of Apache default pages and error messages until I'm done frobbing it. Bear with me; I'm a bit sick today and doing this lying flat on my back with an iBook.
This can be ported to Linux/x86/GNUStep/(CMUCL/SCBCL) ?
You could perhaps use CMUCL's alien facility to build an Objective-C bridge. The syntax of the bridge is just some reader macros to construct class and instance method calls and some other forms, so that could presumably be done.
The source code is still pretty small and simple at this stage; most of the work would probably be in getting the Objective-C bridge to work.
Hmmm, just test-drove it for a while. Nice, cool interface, looks powerful.
Now, if only we could get other output formats (TeX, DocBook), that would be the perfect writer's tool. (By 'writer' I mean someone who needs to edit effectively but doesn't want to have to deal with Emacs).
Nice project: Thanks!