Thinking about IDL style descriptions of document formats

I’ve been background processing about IDL style definitions of document formats for the last few days. Specifically, I’m interested in ways of expressing the structure of a document outside of code, and then having code generated to process the specified document. Sort of like lex and yacc, but more flexible and not language specific. This would mean that when you wanted to process a document in your chosen language, you wouldn’t have to deal with things like SWIG — you’d just generate the native code and go for it.

Obviously these ideas aren’t new. DCE RPC’s IDL language is like this, as is Google’s protobuffers. However, I want something more generic. Has anyone seen something like this?

Color ebook!

By far the most consistent criticism of The Definitive Guide to ImageMagick has been that the sample images need to be in color. I would have to agree with this point, which is why I am delighted that Apress took the time to go back around the production process and produce a version of the ebook with color images. It’s cool that they were willing to put in the effort, and not only that, they’re giving anyone who has purchased the ebook to date a free upgrade. Even better, now if you buy the printed book on Amazon, you get the color ebook for free!

I have a limited number of color ebooks to give away, so if you’re interested please leave a comment and explain why you’d like one.