awesome-kaitai icon indicating copy to clipboard operation
awesome-kaitai copied to clipboard

Added binaryparse (by PMunch) and changed description/status of my projects

Open sealmove opened this issue 4 years ago • 1 comments

An update after my journey of parsing binaries in Nim:

I found out Kaitai Struct semantics don't map very well to Nim because nesting implies OO, which is not idiomatic in Nim. Therefore nimitai is a bad idea. Nevertheless the official Nim backend (in KS compiler) should advance; I plan to work on it in the near future. Trying to find a better way for Nim, I stumbled upon binaryparse which is awesome! It is pretty similar to Python's construct, but with a key difference: It only allows for composition/embedding and not nesting of parsers (construct discourages and has deprecated embedding). Also it allows you to compose generated parsers with hand-written ones in a very simple way. It is minimalistic so you have to use separate code for many common features (like conditionals), but this suitable for Nim since you can just write other macros for them (one can think of them as plug-ins).

Changes:

  1. Marked nimitai as stalled
  2. Added binaryparse
  3. Toned down ambitions for hexalepis

sealmove avatar Nov 18 '20 03:11 sealmove

Also since then:

  • I launched a fork of binaryparse called binarylang, so I added both to the list (in one entry)
  • I made a repo which is a collection of parsers written in binarylang format (n4n6), so I want to add this too to "Formats" section

sealmove avatar Dec 24 '20 17:12 sealmove