[nanomsg] Re: websocket mapping

  • From: "Gonzalo Diethelm" <dmarc-noreply-outsider@xxxxxxxxxxxxx> (Redacted sender "gonzalo.diethelm@xxxxxxxxxxx" for DMARC)
  • To: nanomsg@xxxxxxxxxxxxx
  • Date: Mon, 2 Feb 2015 09:17:03 +0100

> On 30 Jan 2015, at 17:58, Drew Crawford <drew@xxxxxxxxxxxxxxxxxx> wrote:
> 
> This is probably as good of a time as any to announce that I’ve started work 
> seriously on a third nanomsg re-implementation, that will sit beside nanomsg 
> and mangos as a third implementation of the protocols.  A goal of my 
> re-implementation is to leverage the new socket architecture I posted to this 
> list a few months ago, that is difficult to achieve in core for various 
> reasons. A second goal is to fix a bunch of longstanding minor gripes that 
> are hard to do in the existing codebase.

Hey, this is excellent news. It is also a good chance to bring up a question 
from an “insider at the outside” (I have followed ZeroMQ and nanomsg closely, 
and bounced off ideas with Martin, but it’s been a long time since I have done 
anything with any of them, or contributed to any of the projects).

So, I am wondering what is the essence of a nanomsg implementation, and if 
having a good definition for this would be of help in our documentation and in 
helping newcomers understand what we do. Perhaps answering this question would 
lead to an architectural document and, from there, to a set of module 
documents, one per conceptual piece in nanomsg. I would love to contribute to 
that (yes, I am volunteering).

Of course, the obvious answer “the essence of nanomsg is captured in the RFC” 
is both correct and useless… I am wondering more along the lines of:
1. What layers do we have in an implementation of nanomsg?
2. How do these layers relate to each other? What are the interfaces between 
them?
3. What have we learned from all the (two so far) different implementations? 
What are best practices for a nanomsg architecture?

And so on. I am sure it would have helped me understand nanomsg much more 
easily, had I had such descriptions / diagrams / documents. And I don’t feel I 
know enough about nanomsg to be able to produce these documents on my own.

Cheers,
Gonzalo Diethelm

Other related posts: