The use of types in designing unification algorithms: two case studies | Publicación