Our Manifesto (Please Read)

Marcus G. Daniels marcus@cathcart.sysc.pdx.edu
07 May 1997 10:01:51 -0700


>>>>> "M" == cosc19z5@bayou uh edu <cosc19z5@bayou.uh.edu> writes:

M>         To develop an operating system based on Lisp.  An Operating
M> system that from the ground up supports Lisp development and that
M> is (mostly) written in Lisp.  Support will mean both powerful tools
M> for the development of Lisp programs, a Lisp interface,
M> communication/functionality in terms of Lisp objects (to be
M> manipulated as any other Lisp object), and efficient execution of
M> Lisp programs. 

M> Furthermore this operating system will be capable
M> of running binaries of other popular platforms such as WindowsNT/95

Instead of promising emulation, I advocate something along the lines
of "LispOS will not repeat the mistakes of the past; integration with
existing technology is of primary importance".

M>         The operating systems in existence today are woefully
M> inadequate.  From Microsoft Windows, to Unix, these systems are
M> both inefficient to use for program development, and are oriented
M> at too low a level.  With a Lisp operating system, not only will
M> there be an unbeatable development environment for Lisp
M> programmers, (an unbeatable development environment regardless of
M> language), but it will be a fully customizable, re-programmable,
M> easy to use high level system for the end user.  This has already
M> been demonstrated by the Lisp Machines of old, like the Symbolics.
M> However, unlike the Symbolics, this system will be completely free.

I think some Lisp advocacy is appropriate, but at least provide some
concrete examples of the advantages (code/data orthognality, garbage
collection, rich runtime library, dynamic binding and `hot' code
installs, etc). 

M>         It is our hope, that once this operating system achieves
M> wide distribution, people will not only see the inherent advantages
M> of a truly well designed operating system serving as a helper,
M> rather than a hinderance, but will also come to look upon Lisp as a
M> truly capable language, and relieve it of its unjust reputation
M> once and for all.

This paragraph is not useful, IMO.

M> How we Intend to Achieve Our Goals

M>         We will start small and work our way up.  Currently there
M> are 2 branches of work.  One is on a Lisp Virtual Machine, for the
M> efficient execution of Lisp (and possibly other dynamic languages).
M> This virtual machine will use a portable byte code format, and may
M> be compiled from either Lisp or other languages (although it will
M> definitely be optimized for the former).  This will be initially
M> implemented on UNIX as a demonstration of its feasibility.

Are we begging for money?  I find this is an annoying paragraph because it
freezes implementation decisions for volunteers (quite unneccesarily,
IMO). 

M>         The second branch works on the kernel/microkernel.
M> Initially, the amount of Lisp will be minimal in favor of using
M> pre-existing components/code, however the level of operation will
M> be at a high level -- that of objects.  This will enable
M> programmers to be able to utilize system calls much more
M> effectively, since they will be at a higher level of abstraction.

Somehow I don't like the tone of this.  It sounds like an apology and
design mistake, respectively.  I suggest focusing on the idea of a Lisp
system that wraps around existing technology, so as to exploit but
not rely on it.

M>         Initially, we will start our work using CMU-CL on Linux and
M> from then on, we will gradually re-write more and more of the core
M> system in Lisp rather than having it implemented on top of another
M> operating system.  Furthermore, utilities and programming tools
M> will be developed and incorporated into the distribution.  The end
M> result will be a fully functional Lisp system.  This will not
M> happen overnight, but it will happen.

How about, "We have identified as CMU-CL and Linux as core technologies, and
will extend and integrate more as appropriate."  ... or something like that.

The remainder I think should be rewritten to focus more on the
advantages of Lisp (and functional programming?) and make less 
mention of the Software Crisis, the "woeful inadequecy of C/C++", etc.
Make the advantages concrete by pointing to applications where C/C++ fall
down, and where Lisp shines.  As I recall, Bill House and David Gadbois 
made posts listing some potential applications.