© 2003 by mikel evins
Licensed under the LLGPL


latest version is 0.5
updated 03/24/04

Alpaca moved to common-lisp.net

The Alpaca project has a new home, at common-lisp.net. For the time being, at least until the next release of Alpaca, you can still download it from the former SourceForge release page.

Why has Alpaca moved?

For several reasons:

  • The server setup at common-lisp.net is more convenient for me, the project maintainer
  • Alpaca is written in Common Lisp, and so common-lisp.net, a host for Lisp projects, is a natural home for it
  • common-lisp.net is providing a valuable service both for project developers, in maintaining a good hosting service, and for users of projects based on Common Lisp, in increasing awareness of the programming language that has made those projects possible; I think it's useful to support their effort by moving active Lisp projects onto their servers

Mailing Lists


You can browse our CVS repository or download the current development tree via anonymous cvs, as described here.


If you'd like to contribute to the development of Alpaca, please send mail to mevins (at) common-lisp (dot) net, and consider joining the Alpaca-devel mailing list.

Alpaca 0.5 Released (2003-11-23)

Alpaca 0.5 has been released. You can download it from the SourceForge release page. The release is a 9MB disk image for Mac OS X.

New features in Release 0.5 include:

1. Alpaca now works on Panther (Mac OS X 10.3).

2. Alpaca is now built on the Bosco application framework (see my weblog for more information about Bosco).

3. Thanks to Bosco, Alpaca now supports socket listener sessions. You can connect from the terminal to a running Alpaca using the command "telnet localhost 10101". For security reasons, Alpaca supports sessions created on the local machine only; you can't connect to Alpaca over a network connection. The socket connects to an OpenMCL listener session; you have full access to Alpaca's Lisp environment.

4. The RTF view now removes empty pages at the ends of documents.

5. Alpaca 0.5 has an enhanced keybinding architecture and programmer's API.

6. Undo is now implemented.


Alpaca is a text editor for authors designed for use with Mac OS X. It is a Cocoa application that uses Apple's Aqua user interface.

Alpaca is also a Common Lisp application, written using the open-source OpenMCL compiler. Alpaca uses the Objective-C bridge that is included with OpenMCL to create a Cocoa application in Common Lisp.

Alpaca is highly programmable. It is not only built in Common Lisp, it has the complete OpenMCL Common Lisp language built into it, along with the Objective-C bridge that enables it to interact smoothly with the Cocoa environment. Alpaca intercepts almost all keystrokes and can bind them to Lisp functions that you write. Using loadable Common Lisp code you can rewrite almost any aspect of Alpaca's behavior.

Alpaca is intended for authors rather than for software developers. Although it intentionally shares characteristics with Emacs, it was conceived by an author of fiction and technical books for authors of fiction and technical books, and so its feature set and emphasis are different from those of Emacs.

Alpaca is hosted on Sourceforge, where you can get the latest releases and documentation. Alpaca's latest released version is 0.5; this is still an early release. Although it is usable as a text and RTF editor, many planned features are not yet available.

If you download Alpaca, whether to try it out for use as a text editor, or to examine the source code to learn how to build a Cocoa application in Lisp, drop mikel evins a note to let him know how you're using it.

Software used in alpaca's development

Alpaca is built on the work of other people. Without the tools and libraries those other people made and shared, Alpaca would not exist. Alpaca 0.5 is built on the following work:

OpenMCL 0.14 by Gary Byers
The free Common Lisp compiler for PPC

The OpenMCL Cocoa Bridge by Randall Beer
The Lisp-to-Objective-C interface

The portable system-definition facility ("make for Lisp") by Daniel Barlow and contributors

Bosco 0.3 by mikel evins
The Lisp Cocoa application template

remote-repl by Sven Van Caekenberghe
Interactive Lisp sessions over a socket connection

Mac OS X 10.3 "Panther"