Välja on GNU Mes 0.27 tööriistakomplekt, mis tagab GCC jaoks käivitusprotsessi (bootstrap) ja võimaldab luua suletud ringi allika lähtestamisest. Tööriistakomplekt lahendab kehtestatud algse kompilaatori ehituse probleemi distributsioonides, katkestades tsüklilise ehituse ahela (kompilaatori ehitamiseks on vaja juba ehitatud kompilaatori käivitavaid faile ja kompilaatori binaarsed ehitised võivad olla varjatud tagasildade potentsiaalsed allikad, mis ei garanteeri täielikku terviklikkust allika standardtekstide ehitustes).
GNU Mes pakub iseseisvat (self-hosting) Scheme'i tõlgendajat, mis on kirjutatud C keeles, ning lihtsat C keele kompilaatorit (MesCC), mis on kirjutatud Scheme'is. Mõlemad komponendid on omavahel koostööd tegevad. Scheme'i tõlgendaja võimaldab koostada C keele kompilaatori MesCC, mis omakorda võimaldab koostada kärbitud versiooni TinyCC (tcc) kompilaatorist, mille võimeid on juba piisavalt GCC koostamiseks.
Scheme keele tõlkija on väga kompaktne, sisaldades umbes 5000 koodirida keele C kõige lihtsamas alamkogus, ning seda saab muuta teostatavaks failiks universaalse M2-Planet tõlkija või tavalise C kompilaatori abil, mis on kogutud ise kokku koguneva assembleri hex0 abil, mis ei vaja väliseid sõltuvusi. Samuti sisaldab tõlkija täisfunktsionaalset prügi koristajat ja pakub laaditavate moodulite raamatukogu. Projekt arendab ka C-raamatukogu Mes C, mis on piisav glibc 2.2.5, binutils 2.20.1 ja gcc 2.95.3 kogumiseks, mis on vajalik Guix distributsiooni rakendamiseks platvormidele i686-linux, x86_64-linux, armhf-linux ja aarch64-linux, kasutades ainult lähtekoodi (Full Source Bootstrap).
Uues väljaandes on taas toetatud Mes käivitamist GNU Hurd keskkonnas. Lisatud uued moodulid: rnrs (bititüüpi aritmeetika) ja srfi (srfi-39). Ühildumist Guile'iga silmas pidades laaditakse srfi moodul vaikevalikuna. Uued funktsioonid: pair-for-each ja with-fluids*. Kompilaatoris MesCC on rakendatud võimalus töötada moodulitega, et genereerida parserite ja leksikaalanalüsaatorite NYACC versioonidega 0.99.0 kuni 1.09.4. Eemaldatud on võimalus kasutada aegunud mooduleid mes stiilis NYACC ja MesCC.
Allikas: opennet.ru
