Coding 2023-01-06

Tags:
By Max Woerner Chase

My planned changes to MOTR's top layer are getting a bit more ambitious. Basically, I want to abstract out the logic of "what actual operations get performed on artifact.Output's data".

The basic idea is to make the core logic kind of transducer-y, and have supplementary classes that can add additional behavior for specific output types. This is much cleaner in my head than the current system, which kind of mingles different stages of computation, and gets it all to "work" because the types are constrained. If I can pull out the type-specific stuff and make the remainder generic, then I should be able to ignore "what specific stuff the code does in the main methods", because the methods themselves can't act on that information; they can only pass stuff to helper objects with a matching parametric type.

I'm going to need more time to work through these ideas, but I think this is all going in the right direction. I need to get to bed for now, though.

Good night.