re2c 2.0

MĂ« 20 korrik, tĂ« hĂ«nĂ«n, doli versioni i re2c – njĂ« gjenerator pĂ«r analizatorĂ« leksikĂ« tĂ« shpejtĂ«.
Ndryshimet kryesore:

  • Shtuar mbĂ«shtetje pĂ«r gjuhĂ«n Go
    (aktivizohet ose 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. E gjithë nën-sistemi i gjenerimit të kodit në re2c është ribërë, që
    duhet të lehtësojë mbështetje për gjuhë të reja në të ardhmen.

  • Shtuar njĂ« sistem alternativ ndĂ«rtimi nĂ« CMake (faleminderit ligfx!).


    Përpjekjet për të përkthyer re2c në CMake janë bërë prej kohësh, por askush deri te ligfx nuk ka
    propozuar një zgjidhje të plotë.
    Sistemi i vjetër i ndërtimit në Autotools vazhdon të mbështetet dhe përdoret,
    dhe në të ardhmen e afërt nuk ka plane për t'u hequr (pjesërisht për të mos krijuar
    probleme për zhvilluesit e distribucioneve, pjesërisht sepse sistemi i vjetër i ndërtimit
    është më i qëndrueshëm dhe më i qartë se i ri).
    Të dy sistemet testohen vazhdimisht me anë të Travis CI.
  • Shtuar mundĂ«sia e caktimit tĂ« kodit tĂ« ndĂ«rfaqes nĂ« konfigurimet kur pĂ«rdoret
    APIs e përgjithshme (generic API). Më parë shumica e API-ve duhej të caktuan në formën
    e funksioneve ose makros funksionale. Tani mund t'i caktosh në formën e vargjeve të zakonshme
    me parametra template të emëruar si @@{name} ose thjesht @@ (nëse
    parametri është një dhe nuk ka ambiguitet). Stili i API-së përcaktohet nga konfigurimi
    re2c:api:style (vlera functions pĂ«rcakton stilin funksional, ndĂ«rsa free-form – tĂ« lirĂ«).

  • PĂ«rmirĂ«suar funksionimin e opsionit -c, —start-conditions, qĂ« lejon tĂ« kombinohen disa
    lexer të lidhur në një bllok re2c. Tani mund të përdoren
    blloqe të zakonshme në përputhje me kushtore dhe të caktosh disa blloqe kushtore të pa lidhura
    në një skedar.
    PĂ«rmirĂ«suar funksionimin e opsionit -r, —reuse (rindarjen e kodit nga njĂ« bllok
    nĂ« blloqe tĂ« tjera) nĂ« kombinim me opsionet -c, —start-conditions dhe -f, —storable-state
    (lexer me gjendje të ruajtur, e cila mund të ndërpritet në ndonjë vend
    dhe të vazhdojë më vonë).

  • Rregulluar njĂ« gabim nĂ« algoritmin e sapo shtuar pĂ«r pĂ«rpunimin e fundit tĂ« tĂ« dhĂ«nave
    (EOF rule), i cili në raste të ralla çonte në përpunim të gabuar
    të rregullave të mbivendosura.

  • Procesi i bootstrap-it Ă«shtĂ« thjeshtuar. MĂ« parĂ« sistemi i ndĂ«rtimit pĂ«rpiqej tĂ« gjejĂ« dinamikisht
    re2c të ndërtuar, që mund të përdorej për rindërtimin e vet vetes.
    Kjo çojë në varësi të gabuara (pasi grafiku i varësive ishte
    dinamik, gjë që shumica e sistemeve të ndërtimit nuk e pëlqejnë).
    Tani, për të rindërtuar leksierët, është kërkuar në mënyrë të qartë
    të konfigurohet sistemi i ndërtimit dhe të vendoset variabla RE2C_FOR_BUILD.

Faleminderit të gjithëve që morën pjesë në përgatitjen e këtij lëshimi!

Burimi: linux.org.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster