SĂ« fundmi doli versione e re e Kaitai Struct 0.9 â njĂ« gjuhĂ« pĂ«r pĂ«rshkrimin dhe mjetet pĂ«r analizimin e formateve tĂ« ndryshme binare (p.sh., paketa rrjeti, skedarĂ« me imazhe/audio/video, baza tĂ« dhĂ«nash, arkiva, kontejnerĂ« etj.). MegjithĂ«se duket si njĂ« numĂ«r versioni 0.9, ky Ă«shtĂ« njĂ« lançim i rĂ«ndĂ«sishĂ«m qĂ« pĂ«rfshin punimet e bĂ«ra gjatĂ« 2.5 viteve tĂ« fundit. GjatĂ« kĂ«tij periudhe, gjuha ka evoluar nĂ« njĂ« familje tĂ« tĂ«rĂ« projektesh:
- një kompilator që lejon të krijosh kodin e gatshëm të parser për shumë gjuhë programimi (C++, C#, Construct, Go, Java, JavaScript, Lua, Nim, Perl, PHP, Python, Ruby), si dhe diagrame në formatin GraphViz dhe specifikime formatesh të lexueshme për njeriun në HTML;
- mjete për zhvillimin e lehtë të specifikimeve me kontroll vizual në të njëjtën kohë: Web IDE, visualizues konsol, plugin për Visual Studio Code, Hobbits, Veles, plugin për Hiew, plugin për Binary Ninja;
- modulet për integrimin e Kaitai Struct në procesin e ndërtimit për Maven, për Gradle, për Python, për JavaScript/WebPack
- biblioteka e formateve, e cila përfshin në këtë lëshim tashmë 156 përshkrime (dhe më shumë se 78 formate janë në procesin e rishikimit të kërkesave për bashkim).
- biblioteka e algoritmeve të kompresimit Kaitai Compress
- moduli pĂ«r FUSE â Kaitai FS, i cili lejon tĂ« montosh njĂ« skedar si njĂ« sistem skedarĂ«sh, duke pĂ«rdorur pĂ«rshkrimin ksy tĂ« formatit tĂ« tij
Gjuha pranuar nga GitHub dhe përdoret tani në më shumë se 400 projekte të lira / open source për analizimin e formateve të ndryshme ekzotike të të dhënave, duke filluar nga inzhenieria e reversit të skedarëve të të dhënave të lojërave pronësore, deri në analizimin e protokolleve të komunikimit të satelitëve.
Nga risitë kryesore të gjuhës 0.9, duhet të theksohet:
- mbështetje për gjuhët e reja target (Python përmes bibliotekës Construct, Nim, gjenerimi i dokumentacionit në HTML)
- mbështetje e plotë për standardet moderne C++ (smart pointers, nuk ka nevojë për menaxhimin manual të memories, korrigjimi i të gjitha varianteve të njohura të rrjedhjeve të memories)
- mbështetje për adresimin e tipeve të përfshira përmes sintaksës si foo::bar::baz
- mbështetje për verifikimin e të dhënave të lexuara sipas kushteve të përshkruara (valid)
- llogaritjen e madhësive të strukturave statike të të dhënave në byte dhe bit (operatorët sizeof dhe bitsizeof)
- përshkrimi formale i gjuhës në formën e skemës JSON, nga e cila tani generehet dokumentacioni
Burimi: linux.org.ru

