|
|
|
|
|
by IshKebab
194 days ago
|
|
Literally every schema-based serialisation format does this. ASN.1 is a pretty terrible option. The best system for this I've ever used was Thrift, which properly abstracts data formats, transports and so on. https://thrift.apache.org/docs/Languages.html Unfortunately Thrift is a dead (AKA "Apache") project and it doesn't seem like anyone since has tried to do this. It probably didn't help that there are so many gaps in that support matrix. I think "Google have made a thing! Let's blindly use it!" also helped contribute to its downfall, despite Thrift being better than Protobuf (it even supports required fields!). Actually I just took a look at the Thrift repo and there are a surprising number of commits from a couple of people consistently, so maybe it's not quite as dead as I thought. You never hear about people picking it for new projects though. |
|
As an interesting historical note, Thrift was inspired by Protobuf.