path to lispos ???
Wolfram Rinke
wolfram.rinke@kes-adaptive-systems.com
Fri, 20 Mar 1998 09:10:04 +0100
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 [SMTP:joswig@lavielle.com]
Sent: Friday, March 20, 1998 1:56 AM
To: lispos@math.gatech.edu
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: www.lispos.org . Don't use
http://somemachine.somedepartment.someuniversity.edu//~whoever/cant-remember/obscure.html
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
...