Nothing will drive you insane like trying to spending over an hour trying to figure out a problem that turns out to be caused by α-equivalence being broken. Broken because some pattern match branches were in just the wrong order.

Still, I think the type inference code is properly handling a monotonically increasing subset of the InforML language. Tomorrow I'm going to try to get polymorphic generalization straightened out.

Leave a Comment