MĂ« 20 korrik, nĂ« tĂ« hĂ«nĂ«, doli versioni re2c â gjeneratori i analizatorĂ«ve leksik shumĂ« tĂ« shpejtĂ«.
Ndryshimet kryesore:
Shtohet mbështetje për gjuhën Go
(ndĂ«rrohet me opsionin âlang go pĂ«r re2c, ose si njĂ« program tĂ« veçantĂ« re2go).
Dokumentacioni për C dhe Go gjenerohet nga i njëjti tekst, por me shembuj të ndryshëm
tĂ« kodit. ĂshtĂ« rishikuar plotĂ«sisht nĂ«n-sistemi i gjenerimit tĂ« kodit nĂ« re2c, e cila
duhet të lehtësojë mbështetje për gjuhë të re në të ardhmen.-
Përpjekje për të përkthyer re2c në CMake janë bërë prej kohësh, por deri te ligfx askush nuk ka
propozuar një zgjidhje të plotë.
Sistemi i vjetër i ndërtimit në Autotools vazhdon të mbështetet dhe të përdoret,
dhe në të ardhmen e afërt nuk ka plane për t'u tërhequr (pjesërisht për të mos krijuar
probleme për zhvilluesit e shpërndarjeve, pjesërisht sepse sistemi i vjetër i ndërtimit
është më stabil dhe më konciz se i ri).
Të dy sistemet testohen vazhdimisht me ndihmën e Travis CI. Shtohet mundësia për të specifikuar kodin ndërfaqësor në konfigurime kur përdoren
API të përgjithshme (generic API). Më parë shumica e API-ve duhej të definoheshin në formë
funksione ose makro funksionesh. Tani ato mund të vendosen në formën e vargjeve të rastit me parametrat e emëruar të shablonit të tipit @@{name} ose thjesht @@ (nëse
parametri është një dhe nuk ka dykuptimësi). Stili i API-së përcaktohet nga konfigurimi
re2c:api:style (vlera funksione pĂ«rcakton stilin funksional, ndĂ«rsa free-form â formĂ«n e rastit).
Punimi i opsionit -c, âstart-conditions Ă«shtĂ« pĂ«rmirĂ«suar, duke lejuar bashkimin e disalexerĂ«ve tĂ« lidhur nĂ« njĂ« bllok re2c. Tani Ă«shtĂ« e mundur tĂ« pĂ«rdoren
blloqet e zakonshme përveç atyre kushtore dhe të përcaktohen disa blloqe kushtore të pa lidhura
në një skedar.
Funksionaliteti i opsionit -r, âreuse (ripĂ«rdorimi i kodit nga njĂ« bllok
nĂ« blloqe tĂ« tjera) Ă«shtĂ« pĂ«rmirĂ«suar nĂ« kombinim me opsionet -c, âstart-conditions dhe -f, âstorable-state
(lexer me gjendje të ruajtur, i cili mund të ndërpritet në çdo vend
dhe të vazhdojë më vonë).
ĂshtĂ« korrigjuar njĂ« gabim nĂ« algoritmin e ri tĂ« pĂ«rpunimit tĂ« fundit tĂ« tĂ« dhĂ«nave(EOF rule), i cili nĂ« raste tĂ« rralla çonte nĂ« pĂ«rpunimin e gabuar
të rregullave që përputhen.
Procesi i bootstrapping është thjeshtuar. Më parë, sistemi i ndërtimit përpiqej të gjente dinamikishtProcesi i bootstrap-it është simplifikuar. Më parë, sistemi i ndërtimit përpiqej të gjente dinamikisht atë që ishte tashmë
re2c e ndërtuar, i cili mund të përdoret për të riëndërtuar veten.
Kjo çonte në varësi të gabuar (pasi grafiku i varësive rezultonte
dinamik, që shumica e sistemeve të ndërtimit nuk e pëlqejnë).
Tani, për të riparuar leksierët, kërkohet qartazi
konfigurimi i sistemit të ndërtimit dhe caktimi i variables RE2C_FOR_BUILD.
Faleminderit të gjithëve që morën pjesë në përgatitjen e këtij lançimi!
Burimi: linux.org.ru
