These are my daily notes and internal conversations during development. They may be helpful to understand the larger context of decisions that were made, and how I learned and explored while building.

Devlog < 2023 < June < 10

| by date | | thread: co |

While testing out the library navigation, I realized that my example code was no longer building properly. It turned out to be that when I started prepending the library data with "type bytes", I broke the determinism that was needed to align the hashes. Now the hashes that the assembler produces does not match the hashes on disk, and this makes sense. In an ideal world, this whole process would be taken care of by a CODA environment, but I haven't built that yet. Now I'm running into issues like this by trying to ad-hoc implement pieces of it, but not doing so uniformly.

They key issue that needs to be solved here is how I should derive the hashes of of byteco. Originally, it was just the hash of the raw byteco, but I now want to be able to have a "typed" data structure in other places. I should really be using this typed data structure, because that is what fully qualifies it in a "coda" sense. Eventually, that is probably what I'll be using anyway. So for now, I should probably abstract the "canonicalization" of data into hashes and use the same function for both the library and the assembler.


This all worked out, but is there a better word than "canonicalizer"?

| thread: co | | by date |