Estrena el dimarts 19 de novembre re2c – un generador d'analitzadors lèxics (també un compilador d'expressions regulars en codi en el llenguatge de programació de destinació). re2c s'especialitza en la generació de lexers en línia ràpids i senzills. Es diferencia de la seva flexió analògica més coneguda per la seva interfície flexible, la generació de lexers no tabulars optimitzats i el suport per a l'extracció de subconcordança basada en màquines d'estats finits deterministes amb etiquetes (TDFA). re2c s'utilitza en projectes on la velocitat del lexer és important, per exemple a Ninja i PHP.
A la versió 4.0, el subsistema de generació de codi es va redissenyar radicalment, fet que va permetre afegir suport per a vuit idiomes nous (D, Haskell, Java, JavaScript, OCaml, Python, V, Zig) a més dels ja suportats (C). /C++, Go, Rust), així com un mecanisme general per afegir nous idiomes mitjançant fitxers de configuració. El generador de codi s'encarrega de traduir una màquina d'estats finits ja construïda i optimitzada en codi, és a dir, la seva tasca és seleccionar les construccions de control, els tipus de dades, el model de programa general, etc. que siguin adequats per a l'idioma de destinació. Anteriorment, tota aquesta lògica formava part del codi font de re2c, i per canviar-lo o afegir-hi un nou llenguatge, calia pegar el codi font i reconstruir re2c. Aquests pedaços no es van acceptar al repositori principal sense implementar un conjunt estàndard d'exemples i proves, cosa que va complicar encara més tot el procés. Ara s'ha traslladat tota aquesta lògica fitxers de sintaxi – fitxers de configuració de text que pot proporcionar l'usuari (re2c en fa servir els estàndards per defecte). El codi font re2c està completament lliure de detalls específics de l'idioma i només es basa en el fitxer de sintaxi. L'usuari pot anul·lar parcialment un fitxer de sintaxi existent o escriure'n un de nou des de zero. Per a tots els idiomes oficialment compatibles hi ha documentació completa amb exemples.
Per cert, la idea mateixa dels fitxers de sintaxi va sorgir gràcies a un comentari a ENT, gràcies per això
el_codificador.
El llançament va incloure molts altres canvis per simplificar la interfície d'usuari, millorar el treball amb la captura de grups i també va afegir un entorn en línia per editar i compilar exemples: http://re2c.org/playground.
Font: linux.org.ru
