Bol šírený nový vydanie nástroja GNU Mes 0.26, ktorý zabezpečuje proces bootstrapovania pre GCC a umožňuje dosiahnuť uzavretý cyklus prekompilácie zo zdrojových textov. Nástroj sa zaoberá úlohou overenej počiatočnej kompilácie pre distribúcie, čím prerušuje reťazec cyklickej prekompilácie (na zostavenie kompilátora sú potrebné spustiteľné súbory už zostaveného kompilátora, a binárne zostavenia kompilátora sú potenciálnym zdrojom skrytých zadných vrátok, čo neumožňuje plne garantovať integritu zostavení zo štandardných zdrojových textov).
V GNU Mes je navrhnutý samostatný interpret pre jazyk Scheme, napísaný v jazyku C, a najjednoduchší kompilátor pre jazyk C (MesCC), napísaný v jazyku Scheme. Obe komponenty sú vzájomne zostaviteľné. Interpret Scheme umožňuje zostaviť C-kompilátor MesCC, ktorý potom umožňuje zostaviť obmedzenú verziu kompilátora TinyCC (tcc), ktorého schopnosti sú už dostatočné na zostavenie GCC.
Interpret jazyka Scheme je veľmi kompaktný a zaberá približne 5000 riadkov kódu v najjednoduchšom podmnožine jazyka C, pričom môže byť pretransformovaný na spustiteľný súbor pomocou univerzálneho prekladača M2-Planet alebo najjednoduchšieho C-kompilátora zostaveného pomocou samoukúceho assembleru hex0, ktorý nevyžaduje vonkajšie závislosti. Tento interpreter obsahuje plnohodnotný garbage collector a poskytuje knižnicu načítateľných modulov. Projekt tiež vyvíja C-knižnicu Mes C, ktorá je dostatočná na zostavenie glibc 2.2.5, binutils 2.20.1 a gcc 2.95.3, ktoré sú potrebné na nasadenie distribúcie Guix pre platformy i686-linux, x86_64-linux, armhf-linux a aarch64-linux, použijúc len zdrojové texty (Full Source Bootstrap).
V novej verzii bola pridaná podpora modulov, ktoré sú plne kompatibilné s Guile, a bola poskytnutá možnosť spúšťania Gash a Gash-Utils. Prebehla migrácia z assert na používanie výnimiek. Pridaná podpora regulárnych výrazov. Realizovaných deväť nových modulov (ftw, i18n, receive, regex, io ports, bytevectors, srfi-2, srfi-11 a srfi-37). Pridaných 46 nových funkcií, medzi ktoré patrí chdir, clone-port, closedir, concatenate, drop, environ, execle, mkdir, opendir, partition, pipe, readdir, reduce, rmdir, seek, span, sleep, umask, uname a utimes. V ďalších vydaniach sa očakáva podpora bootstrapovania NixOS výhradne zo zdrojových textov, možnosť bootstrapovania gcc 4.6.4, ako aj podpora úplnej zostavy celého systému zo zdrojových textov v Linuxových prostrediach na architektúrach armhf a riscv64.
Zdroj: opennet.ru
