re2c 2.0

EsmaspĂ€eval, 20. juulil, ilmus re2c – kiirete leksikaalanalĂŒsaatorite generaator.
Peamised muudatused:

  • Lisatud tugi Go keelele
    (sisse lĂŒlitatakse kas -lang go valikuga re2c-s vĂ”i eraldi programmiga re2go).
    C ja Go dokumentatsioon genereeritakse ĂŒhe ja sama teksti pĂ”hjal, kuid erinevate
    koodinĂ€idete jĂ€rgi. re2c koodigeneraatori alamsĂŒsteem on tĂ€ielikult ĂŒmber kujundatud, mis
    peaks tulevikus uute keelte toetamist kergemaks tegema.

  • Lisatud alternatiivne CMake keskkonna kogumise sĂŒsteem (tĂ€nud ligfx!).


    CMake'i tÔlkimise katseid on tehtud juba pikka aega, kuid seni polnud keegi
    pakkunud tÀielikku lahendust.
    Vana Autotools keskkonna kogumise sĂŒsteem jĂ€tkab toetamist ja kasutamist,
    ja lÀhitulevikus pole plaanis sellest loobuda (osaliselt, et mitte tekitada
    probleeme jaotuste arendajatele, osaliselt seetĂ”ttu, et vana kogumise sĂŒsteem on
    stabiilsem ja lakoonilisem kui uus).
    MĂ”lemat sĂŒsteemi testitakse pidevalt Travis CI abil.
  • Lisatud vĂ”imalus mÀÀrata liidese kood konfigureerimisel, kasutades
    ĂŒldist API (generic API). Varem tuli enamus API-sid mÀÀrata funktsioonide
    vĂ”i funktsionaalsete makrode kujul. NĂŒĂŒd saab neid mÀÀrata suvaliste
    stringidena nimega malliparameetritega kujul @@{name} vÔi lihtsalt @@ (kui
    parameeter on ĂŒks ja ei teki ebaselgust). API stiil mÀÀratakse konfiguratsiooni
    re2c:api:style (vÀÀrtus functions mÀÀrab funktsionaalse stiili, free-form aga suvalise).

  • Parandatud on -c, —start-conditions valiku töö, mis vĂ”imaldab ĂŒhendada mitu
    omavahel seotud leksereid ĂŒhes re2c plokis. NĂŒĂŒd saab kasutada
    tavalisi plokke koos tingimuslike plokkidega ja mÀÀrata mitmeid omavahel mitteseotud
    tingimuslikke plokke ĂŒhes failis.
    Parandatud on -r, —reuse (koodi korduv kasutamine ĂŒhest plokist
    teistes plokkides) töö koos -c, —start-conditions ja -f, —storable-state
    (leksere, millel on salvestatav olek, mida saab katkestada igas kohas
    ja hiljem jÀtkata).

  • Parandatud on viga hiljuti lisatud sisendi lĂ”ppemise töötlemise algoritmis
    (EOF rule), mis pÔhjustas harvadel juhtudel vale töötlemise
    ĂŒlekatte reeglitega.

  • Lihtsustatud on buutstrapimise protsess. Varem pĂŒĂŒdis kogumise sĂŒsteem dĂŒnaamiliselt leida
    juba kokku pandud re2c-d, mida saaks kasutada iseenda uuesti kokku panemiseks.
    See tÔi kaasa vale sÔltuvused (kuna sÔltuvuste graaf muutus
    dinamiiliseks, mida enamus kompilatsioonisĂŒsteeme ei armasta).
    NĂŒĂŒd, et lexereid uuesti kompileerida, tuleb selgelt
    konfigureerida kompilatsioonisĂŒsteem ja seada RE2C_FOR_BUILD muutuja.

AitÀh kÔigile, kes osalesid selle versiooni ettevalmistamisel!

Allikas: linux.org.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster