Difference between revisions of "Mes"

From bootstrapping
Jump to navigation Jump to search
 
(7 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
This is a program by Jan Nieuwenhuizen to reduce the bootstrap binaries of GuixSD to nothing!
 
This is a program by Jan Nieuwenhuizen to reduce the bootstrap binaries of GuixSD to nothing!
  
* Video: [https://ftp.osuosl.org/pub/fosdem/2017/K.4.601/guixsdbootstrap.vp8.webm guix talk about mes]
+
* Video: [https://video.fosdem.org/2017/K.4.601/guixsdbootstrap.vp8.webm guix talk about mes]
 
* [http://lists.gnu.org/archive/html/guix-devel/2017-04/msg00623.html Mes 0.5 released]
 
* [http://lists.gnu.org/archive/html/guix-devel/2017-04/msg00623.html Mes 0.5 released]
  
 
* [https://libreplanet.org/wiki/Group:Guix/GSoC-2016#Write_a_Bourne-shell_compiler_front-end_for_Guile Bourne shell compiler frontend] (related to guix and bootstrapping)
 
* [https://libreplanet.org/wiki/Group:Guix/GSoC-2016#Write_a_Bourne-shell_compiler_front-end_for_Guile Bourne shell compiler frontend] (related to guix and bootstrapping)
 +
 +
== Architecture ==
 +
 +
mes implements a lisp interpreter written in C, that is able to run mescc which by using nyacc for parsing and mescc-tools for linking functions as a C compiler.
 +
 +
mescc includes its own libc, written in C and is able to compile mes thus providing a full loop bootstrap.
 +
 +
 +
== Breakthrough (Sept 2018) ==
 +
 +
Headline! ''they've managed to bootstrap gcc/glibc/binutils and all of gnu/linux from just: mescc, mes, bash + gnu coreutils and tinycc running on top of linux''
 +
 +
* https://gitlab.com/janneke/guix/blob/affb2e11859b3bb03fdfe0e223e51d97cdc630b3/gnu/packages/commencement.scm
 +
* https://lists.gnu.org/archive/html/guix-devel/2018-09/msg00048.html
 +
 +
Here is a diagram showing the mes based bootstrap packages for GuixSD.
 +
 +
[[File:M1 diagram.png]]
 +
 +
[[File:Commence.png]]

Latest revision as of 23:11, 3 September 2018

Maxwells Equations of Software.[edit]

This is a program by Jan Nieuwenhuizen to reduce the bootstrap binaries of GuixSD to nothing!

Architecture[edit]

mes implements a lisp interpreter written in C, that is able to run mescc which by using nyacc for parsing and mescc-tools for linking functions as a C compiler.

mescc includes its own libc, written in C and is able to compile mes thus providing a full loop bootstrap.


Breakthrough (Sept 2018)[edit]

Headline! they've managed to bootstrap gcc/glibc/binutils and all of gnu/linux from just: mescc, mes, bash + gnu coreutils and tinycc running on top of linux

Here is a diagram showing the mes based bootstrap packages for GuixSD.

M1 diagram.png

Commence.png