Functional Programming, Formal Methods.
straightforward, about 3 lines of code, I’d say. The whole thing works amazingly well and cleanly. Of course, mutual recursion itself is not justified at all. I’m not even close to having the expertise necessary to give a semantics to that, and it’d probably fall in the same problems that Aaron had