[bootstrappable] Re: Descent principle for bootstrapping

  • From: Jeremiah@xxxxxxxxxx
  • To: bootstrappable@xxxxxxxxxxxxx
  • Date: Mon, 26 Jun 2017 23:06:25 -0400

It would be useful to compile a list of the language implementations
which can be built without self hosting (a couple so far: amber,
guile, mes, the stage0
hex-assemblers). It's also important to consider the tools used in the
build process like ./configure.

actually my stage0 hex-assemblers are self hosting and are bootstrapped
in a more primitive version of themselves and don't actually require
things like ./configure, make, gcc and when done it will not even need
an operating system.

The M0 macro assembler design is flexible enough to write multiple
arbitrary assembly languages. (The M1 upgrade even more so).
So with very minimal work, we can assume an assembler, a line text
editor and an archive tool. Which is all one needs to bootstrap
languages like lisp and forth (as was done in stage0)

My designs or lisp and forth are rather trivial to port and assuming
compatibility is preserved, they could allow one to write a rather
useful lisp compiler, which could be leveraged to bootstrap mes.

So I'd argue the bootstrap path is rather straight forward, enhance a
lisp; get a lisp compiler that can run on it and then crank on it until
we have mes working. Or should one prefer FORTH, expand on reepca's work
and produce something better.

Should one feel that the stage0 vm is cheating and we need to hand write
the bootstrap in x86 real-mode octal, I already have the starting pieces
done; only 4 steps are missing to get up to the forth/lisp bootstrap
stage which I am currently working on.

Other related posts: