Coding 2025-06-04

By Max Woerner Chase

I don't want to write up my WTFJam progress because there isn't much yet. My goal is to come up with 144 entries for a Fiasco playset, and I've made some piecemeal progress on that, but I'm going to need to come up with many of these things a day to actually finish this in June.

I ended up devoting more thought to subtyping in Impliciula. The basic implementation of record subtyping shouldn't present too many theoretical hurdles, and I'm reading up on refinement types, but the crux of all of this is going to be the effect system. The crucial interaction that will make programming in Impliciula the way I want to, like, even possible, will be that refining the arguments of a function to a subtype will sometimes make it possible to promote the function type to a supertype that lacks specific effects.

(Actually, it occurs to me that function inlining could make record subtyping more tractable under some circumstances, but, oof, that feels like something that would have to be opt-in.)

Anyway, I need to wrap up for today.

Good night.