Nguyễn Thái Ngọc Duy [off-list ref] writes:
The main reason to group objects by type is to make it possible to
create another sha1->something mapping for a particular object type,
without wasting space for storing sha-1 keys again. For example, we
can store commit caches, tree caches... at the end of the index as
extensions.
Why can't you do the same with a single "sorted by SHA-1" table?
Not impressed yet.