Coding 2025-08-02

By Max Woerner Chase

All right. I figured out the answer to that protocol stuff: just give up and hard-code the possible types. This is frustratingly inelegant, but I can't deny how much easier it was overall.

I then ran into "my whole concept of reifying node transformations and bundling them with a path component, does not work, type system cannot handle it, totally breaks things", and I figured out an acceptable alternative. At that point, it actually became feasible to rewrite the implementations for the concrete node types. And the code is totally normal and not-at-all-cursed.

:)

Uh-huh.

At this point, I'm making my way into "draw the rest of the owl" territory, which is actually an improvement, because where I was before was "all of your drawing implements got snapped in half". Now that I have means of handling all of the basic primitives, and it seems to be compatible with Mypy, there's less of a "mad scramble to fix things" vibe, and more of "so, out of various valid options, which do I prefer?"

As such, I will be trying to take things easy, now that I've figured the big stuff out, and part of that is winding down now, even though Bandcamp Friday didn't go quite right.

Good night.