I probably should have mentioned this - it's a mistake of mine from the pull request adding the type visitor.  Without this change visiting a `TypeFunction` will result in an infinite loop in any visitor class that does not override this method.