re2c 2.0

Uztailaren 20an, astelehena, re2c kaleratu zen, analizatzaile lexikoen sorgailu azkarra.
Aldaketa nagusiak:

  • Go hizkuntzarako laguntza gehitu da
    (gaituta dago --lang go aukerarekin re2c-erako, edo re2go programa autonomo gisa).
    C eta Go-ren dokumentazioa testu beretik sortzen da, baina ezberdinekin
    kode-adibideak. Re2c-en kodea sortzeko azpisistema guztiz birmoldatu da, eta horrek
    Etorkizunean hizkuntza berriak onartzea erraztu beharko luke.

  • CMake-n eraikitze-sistema alternatiboa gehitu da (eskerrik asko ligfx).
    Re2c CMake-ra itzultzeko saiakerak aspaldi egin dira, baina ligfx baino lehen inork ez du
    irtenbide osoa eskaini zuen.
    Autotools-en eraikuntza sistema zaharra onartzen eta erabiltzen jarraitzen du,
    eta etorkizun hurbilean ez dago bertan behera uzteko asmorik (neurri batean ez sortzeko
    banaketa garatzaileentzako arazoak, neurri batean, eraikuntza sistema zaharra delako
    berria baino egonkorragoa eta zehatzagoa).
    Bi sistemak etengabe probatzen dira Travis CI erabiliz.

  • Erabiltzerakoan interfaze-kodea konfigurazioetan ezartzeko gaitasuna gehitu da
    API generikoa (API generikoa). Aurretik, API gehienak formularioan zehaztu behar ziren
    funtzioak edo funtzio makroak. Orain arbitrario moduan ezar daitezke
    @@{izena} edo @@ formako txantiloi-parametro izendatuak dituzten kateak (bada
    parametro bakarra dago eta ez dago anbiguotasunik). API estiloa konfiguragarria da
    re2c:api:style (funtzioen balioak estilo funtzionala zehazten du, forma libreko balioa arbitrarioa den bitartean).

  • -c, --start-conditions aukeraren funtzionamendu hobetua, hainbat konbinatzeko aukera ematen duena
    interkonektatutako lexerak re2c bloke batean. Orain erabil dezakezu
    bloke arruntak baldintzazkoen parean eta erlaziorik gabeko hainbat baldintza ezarri
    blokeak fitxategi batean.
    -r, --reuse aukerak hobetuak (bloke bateko kodea berrerabiltzea
    beste bloke batzuetan) -c, --start-conditions eta -f, --storable-state aukerekin batera
    (kokapen arbitrario batean eten daitekeen egoera-lexera
    eta aurrerago exekutatzen jarraitu).

  • Sarrerako datuen amaiera kudeatzeko gehitu berri den algoritmoan akats bat konpondu da
    (EOF araua), kasu bakanetan tratamendu okerra ekarri zuena
    gainjarritako arauak.

  • Abioko prozesu sinplifikatua. Aurretik, eraikitze-sistema dinamikoki aurkitzen saiatu zen dagoeneko
    bere burua berreraikitzeko erabil zitekeen re2c eraikia.
    Horrek menpekotasun okerrak ekarri zituen (mendekotasun grafikoa atera zelako
    dinamikoa, eraikuntza-sistema gehienei gustatzen ez zaiena).
    Orain, lexerak berreraikitzeko, esplizituki eskatzen da
    konfiguratu eraikuntza-sistema eta ezarri RE2C_FOR_BUILD aldagaia.

Eskerrik asko kaleratze honetan lagundu duzuen guztioi!

Iturria: linux.org.ru

Gehitu iruzkin berria