Kuburitswa kweiyo re2c 4.0 lexical analyzer jenareta

Kuburitswa kwe re2c 4.0 kwakaburitswa - jenareta yeanoongorora lexical (aka muunganidzi weanogara achitaurwa kuita kodhi mumutauro waunonongedza). Re2c inonyanya kugadzira kukurumidza uye nyore-ku-inline lexers uye inosiyana kubva kune yayo inonyanya kuzivikanwa yeFlex mune yayo inoshanduka interface, chizvarwa cheakagadziridzwa asiri-tabular lexers, uye rutsigiro rwe submatch kudhirowa zvichibva pane tagged deterministic finite automata (TDFA). re2c inoshandiswa mumapurojekiti uko kumhanya kweiyo lexer kwakakosha, semuenzaniso muNinja uye PHP.

Mukuburitswa 4.0, iyo kodhi yechizvarwa subsystem yakagadziridzwa zvakanyanya, izvo zvakaita kuti zvikwanise kuwedzera rutsigiro rwemitauro mitsva misere (D, Haskell, Java, JavaScript, OCaml, Python, V, Zig) kuwedzera kune yakatotsigirwa (C. / C ++, Enda, Rust), uye zvakare shandisa nzira yakajairika yekuwedzera mitauro mitsva kuburikidza nemafaira ekugadzirisa.

Iyo kodhi jenareta ine basa rekushandura yakatovakwa uye yakagadziridzwa finite state muchina kuita kodhi, ndiko kuti, basa rayo nderekusarudza zvigadziriso zvinovaka, mhando dzedata, iyo general chirongwa modhi, nezvimwe zvakakodzerwa nemutauro waunonongedza. Pakutanga, zvese izvi zvine musoro zvaive chikamu cheiyo re2c sosi kodhi, uye kuti uchinje kana kuwedzera mutauro mutsva, waifanira kubatanidza iyo kodhi kodhi uye kuvakazve re2c. Zvigamba zvakadaro hazvina kugamuchirwa mudura guru pasina kushandisa yakajairwa seti yemienzaniso uye bvunzo, izvo zvakawedzera kuomesa maitiro ese.

Ikozvino zvese izvi zvine musoro zvakaendeswa kune syntax mafaera - mameseji ekugadzirisa mafaera anogona kupihwa nemushandisi (re2c inoshandisa akajairwa nekusarudzika). Iyo re2c sosi kodhi haina zvachose yemutauro-chaiyo ruzivo uye inotsamira chete pane iyo syntax faira. Mushandisi anogona kuwedzera zvishoma pane iripo syntax faira kana kunyora nyowani kubva kutanga. Mitauro yese inotsigirwa zviri pamutemo ine zvinyorwa zvizere nemienzaniso.

Kuburitswa kunosanganisirawo dzimwe shanduko dzakawanda kurerutsa mushandisi interface uye kunatsiridza kubata kwemapoka ekutapa. Yakawedzerwa pamhepo nharaunda yekugadzirisa uye kugadzira mienzaniso.

Source: opennet.ru

Voeg