i love unions in C. they allow you to pack different types of data into the same memory address.
here's an example of an 64-bit string type that you can pass around as a native word on 64-bit systems. it can either be a binmoji or a 6-character null-terminated string.
this enabes the nostrdb metadata table to be super smol. caching reaction counts for any emoji or 6-length string can now be done inplace, only requiring two 64-bit integers worth of storage for each metadata entry, no string tables!
succinct, cache efficient data structures are my happy place
this enabes the nostrdb metadata table to be super smol. caching reaction counts for any emoji or 6-length string can now be done inplace, only requiring two 64-bit integers worth of storage for each metadata entry, no string tables!
succinct, cache efficient data structures are my happy place