Open jpivarski opened 5 years ago
Expressing and dealing with variants cogently is an important element of most data processing from messy sources.
I'd like to add that it's important to be able to represent exhaustive and non-exhaustive versions of this as well. The non-exhaustive version is probably sufficient to represent with something like, "I couldn't handle this, so here's the byte sequence that was observed."
The flip-side of record types (product types), in which each element has an instance of all fields, are tagged union types (sum types), in which each element has an instance of exactly one type from a list of possible types. For example,
This can be implemented, for instance, with an array of tags (types), optional indexes (offsets), and an array for each type. See, for example, the Arrow implementation.
Are there any plans to support specifications of this kind of data?