path to lispos ???

Jordan Henderson jordan@Starbase.NeoSoft.COM
Fri, 20 Mar 1998 12:31:10 -0600 (CST)

Sorry for the duplication, I responded to Wolfram Rinke's note without
copying the list and when I realized that I asked Mr. Rinke to forward it
to the list, but I'd really rather have my note unquoted, because many
people (at least I do) tend to skip over quoted material.

I agree.  If Richard Coleman is still listening I would like him to
speak directly on the subject of his original goals on starting this
project.  I seem to remember that the original idea was to make a freely
available system which was similar in design and usefullness to the
Symbolics/Explorer/Lambda environments.

I'm concerned that this project has been hijacked by a lot of
competing interests that insist that there is no value in doing
a LispOS if it's not a "completely reflective" system (whatever that
really means), or doesn't have an integrated persistent object system
(whatever that really means) or it's not integrated top-to-bottom
(whatever THAT really means).

What has worked in the past on collaborative Internet projects?
I'm not sure what has worked, but I know that endless speculation
and wrangling over features has not worked, not on the LispOS
project and not on the Tunes project.

I feel that Rainer has listed a number of important goals and has
stated a number of clearcut sub-projects that motivated people could
start on immediately.  It's not clear to anyone that the result of
executing Rainer's list would be that super academic-buzzword-compliant
ultra-flexible earth shakingly revolutionary system that some people
seem to think is the goal, but I do think that having the Infrastructure
that the execution of these sub-projects would provide would imply the
existence of an environment where more ambitious projects could thrive.

It is surprising when someone on this list says something like "I think
we can all agree that..." and we are immediately treated to a number of
differing views which don't agree with each other, but I'm going to
make one of these far reaching statements now.  I think we can all
agree that we want a better computing paradigm that discards a lot
of the baggage from historical mistakes and narrow ways of viewing
problems, we just don't agree what intermediate steps are necessary
to get there.  I feel some are focused on building the "ultimate"
solution from the start, while others just want better CL tools.

>From a practical standpoint, I feel the project lacks leadership.  This
leadership could come by widespread acknowledgement of authority to
establish the "benevolent dictatorship" that some are calling for, or
by the authority that comes with accomplishment (someone writing something
substantial, the Linux model).  However it comes about, leadership would
help us focus our efforts.  In the meantime, it wouldn't hurt to just
start on Rainer's list.

Unfortunately, some of the more important goals (from my perspective) can't
be accomplished without leadership (who will be "officially" responsible for
maintaining, for example).

Can we at least agree we need someone to work on "promotional" infrastructure
(, circulating drafts of position papers, regularly posting reminders
to the appropriate newsgroups, perhaps a project symbol that we could encourage
people to put on their web pages which links to, etc.)?  Or are
we concerned that if we empower someone (or some group) in this way that
the project will be driven to too lofty or too narrow goals and will not be
something we can support?

-Jordan Henderson

Wolfram Rinke writes:
> Your are absolute right! If LispOS wants to be successfull,  do it that way.
> We have been working on TI Lisp machines for many years, doing customer
> project. This machine (like Symbolics or LMI) had/have already versions of a LispOS and LispVM
> implemented in microcode. ;-)
> If you want to have a successfull LispOS clone one of them and bring it to widespread HW platforms.
> Run LispOS on top of NT and UNIX. Integrate it with the WWW. 
> Good luck!
> Wolfram Rinke
> -----Original Message-----
> From:	Rainer Joswig []
> Sent:	Friday, March 20, 1998 1:56 AM
> To:
> Subject:	path to lispos ???
> At 15:07 19.03.98 -0500, you wrote:
> >On a purely social level, I think that any project trying to design an
> >operating systems from scratch over the Internet is likely to fail.
> >Copying an OS is simple:
> You could try to implement something along the lines of the
> Interlisp environment (this already exists as an emulation
> for the PC) or the Lisp machines of MIT heritage
> (LMI Lambda, TI Explorer, Symbolics, ...). But this
> is difficult. You could also look at Apple's now defunct Newton OS.
> >hundreds of potential volunteers. It is much better to clone something
> >that someone else has already designed (as in Linux).
> Yes, you are right on this one. But this is also one of
> the **************big************* weaknesses of Linux:
> it is just a copy. (A copy of something I'm not a particular
> fan of.)
> Some random thoughts:
> - make an overview of what is freely available for Lisp
>   (implementations, GUI code, applications, tools, ...).
> - take care of the public available Lisp code of choice.
>   The best start for a CL-based system currently is CMU CL, IMHO.
> - document. Document. DOCUMENT. ****DOCUMENT****!!!!!!
> - brush up code that is available and desirable, but not actively
>   maintained (defsystem, UIMS code, ...).
> - set up a web site: . Don't use
>   Put everything you have well documented on the web site. You can
>   not afford to lose people by bad documentation (GUILE currently has
>   no real documentation - a big mistake). The Symbolics Lisp machine
>   had very good documentation. Don't care less.
> - identify people with time. Assign responsibilities (takes care about the docs,
>   ensures the web site, maintains the file server, compares the
>   implementations, ...)
> - write a position paper. Circulate widely. Try to get donations (machines,
>   source, man power, ...). Provide regular updates on the project
>   state. Remind people every month/week about this project. Every
>   CS student should know about it.
> - start implementing an interface (telnet server with vtxxx, CL-HTTP
>   access, X-based GUI (with editor, listener, inspector, command interpreter, 
>   backtrace, HTML browser, ...), ...).
>   Maybe something along the lines of a CL-based Emacs-environment. Then
>   the Lisp development system will also be everybody's favorite
>   editor environment.
> - Implement a CL-HTTP-based chat system for the developers.
> - implement extensive introspective documentation access
>   (class graphs, package overviews, method overviews, apropos,
>   describe, documentation, ...)
> - what about storing and retrieving objects?
> - start implementing TCP/IP services
> -- write a mail server (SMTP, POP, IMAP).
> -- write a pop mail client.
> -- write a DNS server
> -- write a DNS client
> - document. Document. DOCUMENT. ****DOCUMENT****!!!!!!
> - write a file browser (like the Mac finder, ...).
> - Start porting packages (SK8, ...).
> - implement a more sophisticated defsystem (with patches, CLOS-based,
>   versions, access rights, web interface, ...).
> - Reimplement C-based software in Lisp. Make the code clearer and
>   better documented (easy).
> - develop access methods to databases.
> - start writing a kernel.
>   - memory allocation
>   - process scheduling
>   - security
> - develop a file system
> ...