Code Generation

Reading the previous two sections, you might have wondered, “Could I write my own IDL generator that’s better than a general-purpose one?” If this thought wandered into your mind, it probably left pretty soon after, chased by dark calculations about how much work that would actually involve.

What if I told you of a way to build custom IDL generators cheaply and quickly? You can have a way to get perfectly documented contracts, code that is as evil and domain-specific as you need, and all you need to do is sign away your soul (who ever really used that, amirite?) right here....

At iMatix, until a few years ago, we used code generation to build ever larger and more ambitious systems; then we decided the technology (the Generator Script Language, or GSL) was too dangerous for common use, and we sealed the archive and locked it away, with heavy chains, in a deep dungeon. In reality, we actually posted it on GitHub. If you want to try the examples that are coming up, grab the repository and build yourself a gsl command. Typing “make” in the src subdirectory should do it (and if you’re that guy who loves Windows, I’m sure you’ll send a patch with project files).

This section isn’t really about GSL at all, but about a useful and little-known trick that’s handy for ambitious architects who want to scale themselves, as well as their work. Once you learn the trick, you can whip up your own code generators in a short time. The code generators most software ...

Get ZeroMQ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.