Dogma was born out of frustration trying to describe data formats (in particular, binary) using existing BNF and other metalanguages. What I wanted was something that makes it clear to a HUMAN reader how a data format is structured and interpreted.
After lots of input from friends and colleagues (as well as testing it out writing numerous examples of existing formats https://github.com/kstenerud/dogma/tree/master/v1/examples ), I feel that it's almost ready for a 1.0 release, but I'd like to get some last minute critiques just to make sure :)
It's not going to solve 100% of use cases, but if it can solve 80-90%, it has met its goal.
Please have a look and let me know what you think!
https://github.com/kstenerud/dogma/blob/master/v1/dogma_v1.m...