Development of GNU MES 0.25 Provides the Bootstraping Process for GCC
After a year and a half of development, the release of GNU MES 0.25 has taken place. This release provides the bootstraping process for GCC and allows achieving a closed re-recording cycle from the source texts. The instrumentation solves the problem of the verified initial assembly of the compiler in the distributions, tearing the cyclic rebuild chain. The compiler is required to assemble the already assembled compiler, and the binary assembly of the compiler is a potential source of hidden braces, which does not allow to fully guarantee the integrity of assemblies from reference source texts. Read more
GNU MES offers a self-sufficient (self-hosting) Scheme interpreter, written in SI, and the simplest compiler for the SI language (MESCC), written in Scheme. Both components are interconnected. The Scheme interpreter makes it possible to assemble the MESCC SI compiler, which then allows you to assemble the cut version of the compiler, TinyCC (TCC), whose possibilities are already enough for GCC assemblies. Read more
The Scheme interpreter is quite compact, occupying about 5000 lines of code for the simplest subservience of the SI language. It can be transformed into an executable file using a universal broadcast M2-Planet or the simplest SI compiler, collected using a self-collected assembler hex0, which does not require external dependencies. At the same time, the interpreter includes a full-fledged garbage collector and provides a library of loaded modules. Read more
The new issue of GNU MES has added support for the RISC-V (RISC-V64-Linux) architecture and added compilation support using the transparents m2-planet. The assembly with the M2-Planet 1.11.0 version for the target platform X86_64-Linux is supported. Indication of the “-Bootstrap-Mode” mode is no longer required when using the M2-Planet. MESCC resolves compatibility problems with GCC 10+ versions, ensures the initialization of the fields of structures in the value of 0, and restores the possibility of debugging binary files at the level of individual functions. Read more
In the following issues, the emergence of NIXOS