<story><title>Cap&apos;n Proto 0.6 released – 2.5 years of improvements</title><url>https://capnproto.org/news/2017-05-01-capnproto-0.6-msvc-json-http-more.html</url></story><parent_chain></parent_chain><comment><author>DonbunEf7</author><text>As usual, nobody has said &amp;quot;capability&amp;quot; yet, which is unfortunate, because one of Capn&amp;#x27;s biggest strengths is that it embodies the object-capability model and is cap-safe as a result.&lt;p&gt;Edit: Why does this matter? Well, first, it matters because so little software is capability-safe. Capn&amp;#x27;s RPC subsystem is based directly upon E&amp;#x27;s CapTP protocol. (E is the classic capability-safe language.) As a result, the security guarantees afforded by cap-safe construction are &lt;i&gt;extended across the wire&lt;/i&gt; to cover the entire distributed system. This security guarantee holds even if not every component of individual nodes is cap-safe, and that&amp;#x27;s how Sandstorm works.&lt;p&gt;Continuing on, there&amp;#x27;s also historical stuff going on. HN loves JSON; JSON is based on E&amp;#x27;s DataL mini-language for data serialization. HN loves ECMAScript; ES&amp;#x27;s technical committee is steered by ex-E language designers who have been porting features from E into ES.</text></comment>
<story><title>Cap&apos;n Proto 0.6 released – 2.5 years of improvements</title><url>https://capnproto.org/news/2017-05-01-capnproto-0.6-msvc-json-http-more.html</url></story><parent_chain></parent_chain><comment><author>drej</author><text>This might be a contrarian view, maybe I&amp;#x27;m misunderstanding it. To me, much of message passing is not performance critical, so it would be well served by JSON&amp;#x2F;YAML&amp;#x2F;XML for easy implementation&amp;#x2F;testing&amp;#x2F;debugging. If one needs performance, he can just send bytes over, which can be (de)serialised in a (couple) dozen SLOC. Sure, when you&amp;#x27;re talking about very complex structures, RPC, dynamic schemas etc., then you might opt for something like this, but let&amp;#x27;s be honest - that&amp;#x27;s quite a minority of current users, isn&amp;#x27;t it?&lt;p&gt;I never minded these frameworks, but then I wanted to write a few parsers for some file formats and they used Thrift&amp;#x2F;Flatbuffers to encode a few ints, which seemed like a major overkill. There was no RPC, no packet loss, no nothing.</text></comment>