Minimum set of primitives?

Christian Lynbech on satellite
Thu, 19 Mar 1998 09:16:05 +0100 (CET)

I am not all together convinced that we (that is in the context of a
lisp OS) should think about primitives such as define or case/if. In
my vision, the lisp OS should provide more basic services allowing
easy and efficient porting of *existing* implementations. Since CMUCL
or GUILE Scheme already has done efficient implementations of all
this, I see no reason to reimplement it.

So what do I mean by "basic services"? Well, this is of course common
infrastructure such as a filesystem, other I/O and memory
management. The main challenge here would be to lay out a system that
would be usefull to (and thus allow the integration of) several
different implementations of different kinds of lisps.

One good example will be memory management. Today, (UNIX)
implementations simply requests chunks of memory and implement their
own memory management. But the Truly Cool Lispos (TM) would provide a
basic set of types (such as `cell', `integer', `float' and `string')
and allow an environment to request for instance a single cons
cell. All management (including GC) would remain the responsibility of
the OS.

Taking any one lisp implementation, combine it with the Fluke kit, and
hack up the missing parts would probably be a rather easy road to
soemthing that could boot a machine up into lisp, but to me, the real
promise of a lisp *OS* would be the ability to *integrate* wildly
different implementations into one coherent working environment.

Perhaps I am just dreaming :-)

Christian Lynbech          | Telebit Communications A/S                       
                           | Fabrikvej 11, DK-8260 Viby J                 
Phone: +45 8628 8176       | email: --- URL:
Hit the philistines three times over the head with the Elisp reference manual.
                                        - (Michael A. Petonic)