Spent the past two days reviewing libmultiprocess. I've just about scraped the surface of its capabilities. I'm still far from actually understanding it though, there's just a lot going on. From my current mental model though this one of the coolest projects I've seen in a while. I want to spend the rest of the week on it too. Lets see if I can figure out more things.
Discussion
It feels a bit zmq-y with libmultiprocess having a lock-based event loop at its heart and events just sending notifications. I'm at the point now where I'm trying to figure out request chaining and feel like that goes decidedly beyond what zmq is capable of out of the box.
So libmultiprocess serves three purposes, 1. dispatching comms across processes, 2. Wrapping these comms for a capnp rpc server/client, 3. Adding glue to go from normal instantiations of c++ virtual classes (commonly referred to as interfaces) to capnp interfaces.