How This Book Happened
When I set out to write a ÃMQ book, we were still debating the
pros and cons of forks and pull requests in the ÃMQ community. Today, for
what itâs worth, this argument seems settled: the âliberalâ policy we
adopted for libzmq
in early 2012 broke our dependency
on a single prime author and opened the floor to dozens of new
contributors. More profoundly, it allowed us to move to a gently organic
evolutionary model that was very different from the older forced-march
model.
The reason I was confident this would work was that our work on the guide had, for a year or more, shown the way. True, the text is my own work, which is perhaps as it should be. Writing is not programming. When we write, we tell a story, and one doesnât want different voices telling one tale; it feels strange.
For me the real long-term value of this project is the repository of examples: about 65,000 lines of code in 24 different languages. Itâs partly about making ÃMQ accessible to more people. People already refer to the Python and PHP example repositoriesâtwo of the most completeâwhen they want to tell others how to learn ÃMQ. But itâs also about learning programming languages.
For example, hereâs a loop of code in Tcl:
while
{
1
}
{
# Process all parts of the message
zmq
message messagefrontend
recv_msg messageset
more[
frontend
getsockopt RCVMORE]
backend
send_msg message[expr
{
$more
?
"SNDMORE"
:
""
}]
message
closeif
{
!
$more
}
{
break
;
# Last message part
}
}
And the same ...
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.