VĂ€lja on GNU Mes 0.27, mis tagab GCC bootstrap-processi ja vĂ”imaldab saavuttaa suletud ringi uuendamise algfailidest. Tööriist lahendab valideeritud algtöötluse kompilaatorite loomise ĂŒlesande ja katkestab ringse uuendamise ahela (kompilaatori koostamiseks on vajadus juba komplitseeritud kompilaatori tĂ€idetavate failide jĂ€rele ning binary-kompilaatorite versioonid vĂ”ivad olla peidetud tagasimurded, mis ei lase tĂ€ielikult tagada eelnevate algfailide genereerimise tĂ”husust).
GNU Mes pakub isetÀiendavat Scheme'i tÔlgendajat, mis on kirjutatud C keeles, ja lihtsaimat C kompilaatorit (MesCC), mis on kirjutatud Scheme'is. MÔlemad komponendid vÔivad omavahel kokkupuudet teha. Scheme'i tÔlgendaja vÔimaldab koguda C kompilaatorit MesCC, mis omakorda vÔimaldab luua vÀhendatud versiooni TinyCC-st (tcc), mille vÔimalused on piisavad GCC-i kompileerimiseks.
Scheme'i keele tĂ”lgendi kood on vĂ€ga kompaktne, umbes 5000 rida koodi lihtsaimas C keele osade kogumikus ja seda saab muuta tĂ€idetavaks failiks M2-Planet universaalse tĂ”lkija abil vĂ”i lihtsa C kompilaatori kaudu, mis on koostatud iseeneslikust assemblerist hex0, mis ei nĂ”ua vĂ€liseid sĂ”ltuvusi. Lisaks sisaldab tĂ”lgendi tĂ€ielik prĂŒgikoguja ja pakub allalaetavaid mooduleid. Projekt arendab ka Mes C keele teeki, mis on piisav glibc 2.2.5, binutils 2.20.1 ja gcc 2.95.3 kompileerimiseks, mis on vajalik Guix'i levitamiseks platvormidele i686-linux, x86_64-linux, armhf-linux ja aarch64-linux, kasutades ainult algdokumente (Full Source Bootstrap).
Uues vĂ€ljaandes on taastatud Mes'i kĂ€ivitamise tugi GNU Hurd keskkonnas. Lisatud on uued moodulid: rnrs (bitiseeritud arvutused) ja srfi (srfi-39). Ăhildumise huvides Guile'iga laaditakse srfi moodul vaikimisi. Lisafunktsioonide seas on pair-for-each ja with-fluids*. MesCC kompilaatoris on realiseeritud moodulite tugi parserite ja lexikaaniliste analĂŒsaatorite genereerimiseks NYACC versioonidest 0.99.0 kuni 1.09.4. Eemaldati vananenud moodulite kasutamise vĂ”imalus NYACC ja MesCC jaoks.
Allikas: opennet.ru
