4 ms·
> no cross-version compatibility: Cap'n Proto, FlatBuffers This is incorrect: Cap'n Proto absolutely allows cross-version compatibility, using roughly the same
by kentonv 7y ago
> no cross-version compatibility: Cap'n Proto, FlatBuffers
This is incorrect: Cap'n Proto absolutely allows cross-version compatibility, using roughly the same semantics as Protobuf. I believe FlatBuffers does too. (I'm unsure about the rest, haven't studied them in a while.)
> I'm using "self-describing" here to mean simply that you can recover the structure of the encoded data without a separate schema, rather than that you can attach any semantic meaning to it.
Protobuf, Cap'n Proto, and probably several of the other binary formats can parse data into a message tree without the help of a schema, but all the fields will be labeled numerically. MessagePack is only considered "self-describing" in comparison because in encodes human-readable field names on the wire.