Coding 2025-09-13

By Max Woerner Chase

Okay, let's see what I've got in the node classes. There are three classes that have two methods of interest each.

Each of them has a pair of inference/check methods, and the *Term classes have the template pattern kind of deal where there's a private abstract method, with a public interface that calls the private method with some boilerplate. In every case, there are predefined method implementations.

In every case, I want to have some way to substitute the class name into the documentation for the predefined method. And in the *Term types, I want the public documentation to reflect what's written on the private implementation.

Before I think too hard about this, I'm going to make the change that this all suggests: properly naming all of the *Type subclasses, rather than just relying on the fact that they're unique within their module and just calling them "Type".

The next step, which I won't take tonight, is to write __init_subclass__ methods on the classes, and create copies of the public methods of interest, with updated documentation. This is another case of "something I need to think carefully about", so maybe I'll switch gears for a bit tomorrow. We'll see. For now, bed.

Good night.