The strong point of BINTYPE is that it is declarative, that is for most file formats you are not supposed to write even a single line of imperative code.
That said, BINTYPE degrades gracefully when the base specification language is not up to task: new structural abstractions can be defined.
Source repository: https://github.com/deepfire/bintype
License: LGPL