RAIRO - Theoretical Informatics and Applications · 1993 · 33 citations · 13 references
ComputingComputer ScienceData StructuresFormal MethodsProgramming LanguagesData TypesLibrary ConstructionType ClassificationType SystemsLinear TypesPolymorphic Type SystemsPolymorphic TypesType ClassesType Unification
An improved method to retrieve a library function via its Hindley/Milner type is described. Previous retrieval systems have identified types that are isomorphic in any Cartesian closed category (CCC), and have retrieved library functions of types that are either isomorphic to the query, or have instances that are. Sometimes it is useful to instantiate the query too, which requires unification modulo isomorphism. Although unifiability modulo CCCisomorphism is undecidable, it is decidable modulo linear isomorphism, that is, isomorphism in any symmetric monoidal closed (SMC) category. We argue that the linear isomorphism should retrieve library functions almost as well as CCC-isomorphism, and we report experiments with such retrieval from the Lazy ML library. When unification is used, the system retrieves too many functions, but sorting by the sizes of the unifiers tends to place the most relevant functions first. R'esum'e Ce papier pr'esente une nouvelle m'ethode pour la re...
13
Jean-Yves Girard · Theoretical Computer Science · 1987 · 4.1K citations
Jörg H. Siekmann · Journal of Symbolic Computation · 1989 · 219 citations
Yves Lafont · Theoretical Computer Science · 1988 · 131 citations
Lennart Augustsson · The Computer Journal · 1989 · 89 citations