Type visitor?

Is there some fundamental reason why instructions have a
visitor interface but types do not? Or does the support
in fact exist and I am just blind?

There is no specific reason, one just hasn't been needed so far. Visitors are generally useful for large class hierarchies or ones which are often extended. The type hierarchy is relatively stable and small.