bootstrapping [was: Re: HLL is not against LLL]

Rainer Blome rainer@physik3.gwdg.de
Sat, 29 Jul 1995 20:04:18 +0200


> * we want our OS to be and distributed over heterogeneous networks.
> * we want it to be standalone and dynamically extensible.
> * we want to have a implementation as quickly as possible.
> * we want it to be as efficient as possible in the above limits

agreed.

then you argue  why a LLL is favorable for bootstrapping.

> * because we want the implementation to be efficient, we must be *able*
>   to compile code to the lowest possible level.

here i disagree.  booting doesn't have to be maximally efficient.  what i
have in mind is more like jecel's approach: bootstrap from a high,
comfortable level, then add an efficient, low level.  why not start with a
self-like bytecode interpreter?

self-like languages force you to structure, forth will make things ugly.
we don't need much efficiency for the initial boot stages.  special-purpose
languages (e.g. forth, compiled self, other bytecodes like java, guile or
caml-light) can be added when needed.

booting would thus be:
 1. boot lll interpreter (maybe from rom, disk or net?)
 2. use it to get the hll (which may just be a lll compiler) from somewhere
 3. use that to do anything else

and this would have the advantage of the lll being (one of?) the hll(s).

(migration stuff etc. still applies)


rainer