Kerr Black Hole!
So is this like Apache Thrift
"Apache Thrift allows you to define data types and service interfaces in a simple definition file. Taking that file as input, the compiler generates code to be used to easily build RPC clients and servers that communicate seamlessly across programming languages. Instead of writing a load of boilerplate code to serialize and transport your objects and invoke remote methods, you can get right down to business."
(RPC? I prefer messaging, but RPC is ok if it stays on the same machine and best in the same process and you can live with having really tight binding in the application.)