Earlier quoted context omitted.
> the decoder can [...] tolerate unknown fields. See ASN.1's extensibility rules. If you mark a record type (SEQUENCE, in ASN.1 parlance) as extensible, then when you later add fields (members, in ASN.1 parlance) the encoding rules have to make it possible to skip/ignore those fields when decoded by software implementing the pre-extension type. PER/OER will include a length for all the extension fields for this purpo…
You make it sound like protobuf was invented yesterday. Sure it's not so old like ASN.1 but protobuf now about a quarter century old and battle tested as the main interchange format for at least one giant company with gazillions of projects that needed to interoperate. One of the design requirements was simplicity and ease of implementation and for all the love in the world I can muster for ASN.1 I must admit it's fa…
> IIRC complete and open implementations of ASN.1 were/are rare and the matrix of covered features didn't quite overlap between languages.
When protobufs was designed there were zero protobufs implementations.