I preface this post with the acknowledgement that these areas are a movable 
feast, and at some point you just have to ship something....
I also ack that I'm not 100% conversant with MK's use cases and 
requirements.

Nonetheless, I believe the following might be of interest.

There are now several message formats that offer considerable speed 
advantages over Protbuf.
In fact I wonder if it isn't possible to simplify MK by replacing ZeroMQ 
and Protobuf with something like Cap'n Proto, ( maybe Flatbuffers if the MK 
components are (as good as) stateless and even SBE if random reads of 
messages is not required)?
The issue seems to some down to how stateless/stateful are the different 
components of MK.

My naive understanding is that the important parts MK are stateful.  I 
won't by surprised to find out that is naive - kinda like that moment you 
were exposed to the dual representation in LP.
Nonetheles I found these interesting, [1], [2].

In particular [2] was interesting for the comment that, given their 
targeted use cases it would make more sense to build ZeroMQ on Cap'n Proto 
rather than pass Cap'n Proto messages around with ZeroMQ.

I might have the wrong end of the stick here.... 
Earlier I posted a comment that I wondered if driving and interacting with 
a 3D-Printer or any CNC machine wouldn't be easier/best using a FSM (if 
this was true Ragel was the suggested building block),
If that idea isn't nuts, then I also wonder if ZeroMQ + Protobuf aren't 
doing together what Cap'n Proto can do alone?
Again I have little insight into how much method chaining there is between 
MachineTalk mediated components, so the benefits may not outweigh the costs 
of switching.

Anyway, hope someone found these new or interesting

[1] https://capnproto.org/news/2014-06-17-capnproto-flatbuffers-sbe.html
[2] https://capnproto.org/faq.html

Best wishes
Hedge
On Monday, May 1, 2017 at 2:33:35 PM UTC+10, Alexander Rössler wrote:
>
> I wrote a blog post about the design decisions behind Machinetalk some 
> time ago:
>
> http://machinekoder.com/machinetalk-explained-part-2-middleware-requirements/
>
> ZeroMQ won the game because is was the best networking middleware choice 
> for this application the time we started to work on Machinetalk.
>
> With Machinetalk GSL, Machinetalk also becomes transport agnostic. That 
> makes things like WebVCP possible.
>
> Am Freitag, 14. April 2017 07:12:25 UTC-5 schrieb Hedge Hog:
>>
>> Thanks Schooner, I wasn't aware it was dead - unfortunate.
>>
>> On Friday, April 14, 2017 at 9:50:30 PM UTC+10, Schooner wrote:
>>>
>>>
>>> On 14/04/17 12:33, Hedge Hog wrote:
>>>
>>> Hi,
>>> I'm new to Machinekit, via the world of 3D Printing.  I'm new there too, 
>>> but doing my homework on 'best-practice' around boards and drivers lead me 
>>> here (via grbl, marlin, linuxcnc).
>>>
>>> I was very impressed you're using zeromq - my experience is that not too 
>>> many know about it outside of finance (at least that was true 7 years 
>>> ago).  
>>> It was that project choice that convinced someone here knows what they 
>>> are doing.
>>>
>>> Given that the use of ZeroMQ is in its early days in Machinekit I have 
>>> to ask:
>>>
>>>
>>> It has been used since before the split with linuxcnc, so longer than 
>>> Machinetalk has existed as a separate entity
>>>
>>> Was there a reason(s) nanomsg wasn't adopted? I'm assuming it existed at 
>>> the time :)
>>> Are there plans to migrate to nanomsg?
>>>
>>>
>>> Shouldn't think so, the nanomsg project seems to have imploded whereas 
>>> zmq is actively maintained
>>> http://sealedabstract.com/rants/nanomsg-postmortem-and-other-stories/
>>>
>>> If it does what we need, why change?
>>>
>>>
>>>
>>> Best wishes 
>>> Hedgehog
>>> -- 
>>> website: http://www.machinekit.io blog: http://blog.machinekit.io 
>>> github: https://github.com/machinekit
>>> --- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Machinekit" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to machinekit+...@googlegroups.com.
>>> Visit this group at https://groups.google.com/group/machinekit.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>>

-- 
website: http://www.machinekit.io blog: http://blog.machinekit.io github: 
https://github.com/machinekit
--- 
You received this message because you are subscribed to the Google Groups 
"Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to machinekit+unsubscr...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.

Reply via email to