Structura Kaitai 0.9


Structura Kaitai 0.9

Recent, a fost lansată următoarea versiune a Kaitai Struct 0.9 - un limbaj pentru descrierea și analizarea diferitelor formate binare (de exemplu, pachete de rețea, fișiere imagine/audio/video, baze de date, arhive, containere etc.). În ciuda versiunii cu aspect frivol numărul 0.9, aceasta este o versiune majoră care include evoluții din ultimii 2.5 ani. În acest timp, limba a crescut la o întreagă familie de proiecte:

Limbă recunoscut de GitHub și este acum utilizat în peste 400 de proiecte gratuite/open source pentru a analiza tot felul de formate de date exotice, de la inginerie inversă a fișierelor de date de joc proprietarefinal analiza protocoalelor de comunicații prin satelit.

Dintre principalele inovații ale limbajului 0.9, merită evidențiate:

  • suport pentru noi limbi țintă (Python prin biblioteca Construct, Nim, generarea de documentație HTML)
  • suport complet pentru C++ modern (indicatoare inteligente, nu este nevoie să gestionați manual memoria, remedieri pentru toate scurgerile de memorie cunoscute)
  • suport pentru adresarea tipurilor imbricate prin sintaxa foo::bar::baz
  • suport pentru validarea datelor citite conform condițiilor descrise (valid)
  • calcularea dimensiunilor structurilor de date statice în octeți și biți (operatorii sizeof și bitsizeof)
  • descrierea formală a limbii în formă Scheme JSON, din care acum se generează documentația

Sursa: linux.org.ru