concise-encoding icon indicating copy to clipboard operation
concise-encoding copied to clipboard

Redundant empty arrays?

Open kengruven opened this issue 4 years ago • 0 comments

Right now, there are separate length=0 arrays for each numeric type (int8, uint16, int16, etc).

Since all numeric types in CE are considered equivalent, aren't all numeric arrays with 0 elements equivalent, too?

Thus, we could shift all of the fixed-size arrays from len=0...15 to len=1...16, and allow 16-element arrays to be encoded more concisely (1 fewer byte), without taking up any more space on plane 2.

That is, instead of needing [94 00], [94 10], [94 20], etc., we can encode any empty numeric array as [95 00], just as now. The only length-0 typed array we need on plane 2 is UUID.

kengruven avatar Jul 03 '21 04:07 kengruven