[zeromq-dev] conventions in bindings

john skaller skaller at users.sourceforge.net
Fri Feb 3 03:40:17 CET 2012

On 03/02/2012, at 7:38 AM, Gary Wright wrote:

> So it sounds like in Felix, a ZMQ message is an array of strings, where each string represents
> a ZMQ message fragment.

There are at least four layers in the binding.  The old code shown on the web-site
has now been updated. 


They can all be used together if required. The lowest level is precisely the C API.
I mean "precisely", you can write C/C++ literally in Felix (its a C++ code generator).

The next lowest just an image of ZMQ except the flags and options
and stuff have distinct abstract types.  Of course it is implemented
in Felix using the ability to write C code literally in Felix.

The third layer has abstracted automatic error checking and uses higher level
data types like strings for "messages".

The fourth layer binds a fixed error handling strategy of the second,
in this case system exit with a message.

All the functions can be used simultaneously from all parts of the binding.
You can even write C code which calls 0MQ directly if you want to suffer
the problems of poor type checking etc in order to say, work around a
deficiency in the higher level binding code.

john skaller
skaller at users.sourceforge.net

More information about the zeromq-dev mailing list