| ▲ | mrbnprck 21 hours ago | ||||||||||||||||||||||||||||
I remnber that ASN.1 does sth similar. You'd give a ASN.1 notation to a language generator (aka producing C) and not have to worry about parsing the actual structure anymore! | |||||||||||||||||||||||||||||
| ▲ | IshKebab 19 hours ago | parent [-] | ||||||||||||||||||||||||||||
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. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||