Duela gutxi, Kaitai Struct 0.9-ren hurrengo bertsioa kaleratu zen - hainbat formatu bitar deskribatzeko eta analizatzeko hizkuntza bat (adibidez, sare-paketeak, irudi/audio/bideo fitxategiak, datu-baseak, artxiboak, edukiontziak, etab.). 0.9 bertsio friboloa izan arren, azken 2.5 urteetako garapenak biltzen dituen bertsio garrantzitsu bat da. Denbora horretan, hizkuntza proiektu familia oso bat hazi da:
- formatua zehaztapen fitxategi batetik (.ksy) programazio-lengoaia askotan (C++, C#, Construct, Go, Java, JavaScript, Lua, Nim, Perl, PHP) Python, Ruby), baita diagramak GraphViz formatuan eta gizakiek irakur daitezkeen formatu zehaztapenak HTMLn;
- Zehaztapenak garatzeko tresnak aldi berean ikus-kontrolarekin: web IDEa, kontsolaren errendatzailea, Visual Studio Coderako plugina, Hobbitak, Veles, Ikusi plugina, Binary Ninjarako plugina;
- Kaitai Struct muntaketa-prozesuan integratzeko moduluak mavenentzat, gradlerako, Pythonentzat, JavaScript/Webpack-erako
- formatu liburutegia, dagoeneko 156 deskribapen ditu bertsio honetan (eta 78 formatu gehiago pull eskaera berrikusteko prozesuan daude).
- Konpresio-algoritmo konektagarrien liburutegia Kaitai Konpresa
- FUSE-rako modulua - Kaitai FS, fitxategi bat fitxategi sistema gisa muntatzeko aukera ematen duena bere formatuaren ksy deskribapena erabiliz
Hizkuntzen GitHub-ek aitortua eta gaur egun doako 400 proiektutan baino gehiagotan erabiltzen da datu formatu exotiko guztiak aztertzeko, alderantzizko ingeniaritza jabedun jokoaren datu-fitxategiakamaiera satelite bidezko komunikazio-protokoloen azterketa.
0.9 hizkuntzaren berrikuntza nagusien artean, azpimarratzekoa da:
- Helburu-hizkuntza berrietarako laguntza (Python, Construct liburutegiaren bidez, Nim, HTML dokumentazioa sortzea)
- C++ modernorako laguntza osoa (erakusle adimendunak, ez dago memoria eskuz kudeatu beharrik, memoria-isurketa ezagun guztien konponketak)
- habiaratutako motak foo::bar::baz sintaxiaren bidez zuzentzeko laguntza
- deskribatutako baldintzen arabera irakurritako datuak baliozkotzeko laguntza (baliozkoa)
- datu-egitura estatikoen tamainak kalkulatzea bytetan eta biten (eragileak sizeof eta bitsizeof)
- hizkuntzaren deskribapen formala formularioan JSON eskemak, bertatik orain dokumentazioa sortzen da
Iturria: linux.org.ru