3 ms·
So after skimming the paper, this seems like a formalization of something like Protobuf/CaptnProto with native language support. Interesting, but not necessari
by the_duke 7y ago
So after skimming the paper, this seems like a formalization of something like Protobuf/CaptnProto with native language support.
Interesting, but not necessarily very practical.
- firethief 7y agoCapn proto is like a RAM format that can be directly serialized. This is a serialization format that can be directly worked with. They both allow skipping deserialization, but that's not the main draw of this approach. The ability to design data representation around expected access patterns can make traversal faster and data more compact even if you don't plan to ever "serialize" it.
- aidenn0 7y agoYou may want to read this comment: https://news.ycombinator.com/item?id=20266970 https://news.ycombinator.com/item?id=20266970
- rrnewton 7y agoOur main focus of the Gibbon project is to make tree traversals very fast, and only secondarily to work with serialized data. CapnProto is a wonderful library interface for dealing with serialized data, but I think the usual library-vs-compiler distinction applies. A library operates at the level of individual data access methods, but it doesn't try to change the control flow of the code calling those methods. That's our goal with this project. We sometimes turn the code a bit inside out in order to make it better operate on serialized data. (For instance, switching a postorder traversal to a preorder one.)