re2c 2.0

Dinten Senén, 20 Juli, re2c, generator analisa leksikal gancang, dileupaskeun.
Parobahan utama:

  • Ditambahkeun dukungan basa Go
    (diaktipkeun ku pilihan --lang go pikeun re2c, atanapi salaku program re2go anu misah).
    Dokuméntasi pikeun C sareng Go dihasilkeun tina téks anu sami, tapi kalayan béda
    conto kode. Subsistem generasi kode di re2c parantos dirarancang deui, anu mana
    kedah ngagampangkeun ngadukung basa énggal di hareup.

  • Ditambahkeun sistem ngawangun alternatif pikeun CMake (hatur nuhun ligfx!).
    Usaha narjamahkeun re2c ka CMake parantos lami dilakukeun, tapi sateuacan ligfx teu aya anu
    ditawarkeun solusi lengkep.
    Sistem ngawangun Autotools anu lami terus dirojong sareng dianggo,
    sareng di masa depan anu tiasa diramalkeun teu aya rencana pikeun ngantunkeunana (sabagéan supados henteu nyiptakeun
    masalah pikeun pamekar distribution, sabagean kusabab sistem ngawangun heubeul
    langkung stabil sareng langkung ringkes tibatan anu énggal).
    Kadua sistem terus diuji nganggo Travis CI.

  • Ditambahkeun kamampuan pikeun nyetél kode antarmuka dina konfigurasi nalika nganggo
    API umum. Saméméhna, paling API kedah dieusian dina formulir
    fungsi atawa fungsi makro. Ayeuna aranjeunna tiasa dieusian dina bentuk wenang
    garis kalawan parameter citakan ngaranna kawas @@{ngaran} atawa ngan @@ (lamun
    ngan ukur aya hiji parameter sareng teu aya ambiguitas). Gaya API dieusian ku konfigurasi
    re2c:api:style (nilai fungsi nangtukeun gaya fungsional, sarta formulir bébas nangtukeun gaya arbitrer).

  • Operasi pilihan -c, --start-conditions parantos ningkat, ngamungkinkeun anjeun ngagabungkeun sababaraha
    lexers interconnected dina hiji blok re2c. Ayeuna anjeun tiasa nganggo
    blok biasa sareng anu kondisional sareng tangtukeun sababaraha anu teu aya hubunganana
    blok dina hiji file.
    Ningkatkeun operasi pilihan -r, --reuse (ngagunakeun deui kode tina hiji blok
    dina blok séjén) dina kombinasi sareng -c, --start-conditions sareng -f, --storable-state options
    (a lexer stateful nu bisa interrupted iraha wae titik
    teras teraskeun palaksanaan engké).

  • Ngalereskeun bug dina algoritma input-input anu nembé ditambah
    (aturan EOF), anu dina kasus anu jarang nyababkeun pamrosésan anu salah
    aturan tumpang tindih.

  • Prosés bootstrap parantos disederhanakeun. Saméméhna, sistem ngawangun diusahakeun dinamis manggihan geus
    a re2c ngawangun nu bisa dipaké pikeun ngawangun deui sorangan.
    Ieu nyababkeun kagumantungan anu salah (saprak grafik kagumantungan éta
    dinamis, anu paling sistem ngawangun henteu resep).
    Ayeuna, pikeun ngawangun deui lexers, anjeun kedah sacara eksplisit
    ngonpigurasikeun sistem ngawangun tur nyetel variabel RE2C_FOR_BUILD.

Hatur nuhun ka dulur anu ilubiung dina persiapan release ieu!

sumber: linux.org.ru

Tambahkeun komentar