Coding 2026-01-12
I made some localized improvements to the Impliciula code, and fixed saving in my editor by, um, upgrading my LSP? Modern development is weird. Anyway, I'm having trouble figuring out what to work on next, because the code right now is a confusing mass of circular imports, and I don't see any way that my planned rewrites will improve the situation, so that's messing with my motivation a little.
Given that, let's make some improvements to the conlang code.
...
Okay, I've added a new field type possibility, written a deserializer for it, updated the existing deserializer, and now I need to work out how to process this new data in the fusion code. The remaining work appears to all be in the innermost loop, for certain definitions of "loop" and "innermost".
However, to get this done well, I'd like to have some helper functions. But it's a little hard to say exactly what these helper functions should look like.
The highest-level function I need would take a mapping of lexicon entries, a part of speech, and either a root or a specific inflection. If it's not a specific inflection, and the part of speech matches, then it needs to iterate over the inflections present for that part of speech; otherwise it needs to return X copies of the given inflection, if any, or the bare root, where X is the number of inflections associated with the part of speech.
Writing that out suggests that I should track inflections separately from any given entry. That's another change to deserialization and serialization, and a slightly fiddlier one, so I'm going to make sure my current changes haven't broken anything, and come back to this later, since it's getting late.
Good night.