Returning to mathematics ------------------------- The good news is that I'm finally getting back some of my sleep deficit and I'm feeling less overwhelmingly worn down than I was for a bit there. The bad news is that my anxiety has been through the roof to make up for it. The first few hours of the day I had that "scream in the back of my throat" kind of terror. Why? I honestly don't know. Looking at the state of the world I'm not sure if you even really need a reason, though. It's all just utter fucking madness and getting madder. I've been back into doing a lot more mathematics, like actual mathematics, again. It feels almost self-indulgent in comparison to the more managerial work I've been saddled with lately, but it's important to the work I *want* to be doing. It's hard for me to put into words yet but for the past few years my dream has been to take a lot of the machinery of PL theory and big chunky enriched and/or higher dimensional category theory and apply it to the intersection of computation and the arts: patterns, procgen, live-coding, generative art, &c. My gut tells me there's a lot more algebraic structure that we can exploit, generalizing a lot of ad hoc approaches and constructions into a broadly versatile toolbox. Even though it's not what I was using in my doctoral work I've had Spivak &al. style applied category theory on my radar since '09 and now that it seems to be maturing, even exploding, as a field I figure this is the time to strike. I've been watching lectures from the topos institute on applied category theory while I ride our exercise bike, reminding myself of a lot of the concepts I used to use daily and seeing them put to new uses beyond the categorical logic that's my comfort zone. It feels like something in me waking up again, a kind of sharpness to my thinking coming back like I'm sating some need I'd gone without so long that I'd forgotten it was even there. There's two broad topics of exploration that I want to understand first and foremost: The first is the algebraic structure of patterns, here I mean patterns in the sense of Tidal to start but hopefully going further. I truly believe the most brilliant thing Alex McLean figured out in Tidal is that a live-coding system should fundamentally be about patterns in time and how to combine and transform them, emphasizing patterns as the center of gravity everything else revolves around. Sure the pattern type in Tidal is a monad, which is a category theoretic structure obviously, but I think there's something deeper there. I've got scribbled notes from last year about what a more general idea of the laws and operations of patterns apart from their actual implementation in Tidal is. I don't know yet if it'll amount to anything but once there is a really general notion of pattern we can start talking about transformations of patterns in new, interesting, ways by knowing how to preserve those laws. Again, if this sounds hand-wavy it is a little bit. It's all guesses and hunches that I haven't really put the time into figuring out before now. The second is that I want to introduce computation to youth diagrammatically. Like the ways you can describe kinds of composition with wire-diagrams that represent calculations in monoidal categories so that fairly complex calculations just end up looking like flow-charts that obey certain rules of construction, I wonder if we can introduce more and more complicated notions of computation and have increasingly rich diagram chasing ways of explaining and composing them. We could potentially then make teaching youth programming something that's no longer dependent on a particular language but on a set of algebraic ideas that you can *then* relate to the particulars of implementation. Again, I don't know if any of this is actually realistic or if I'm even good enough to pull it off. But I think I'm tired of not trying.