AbstractEquality and subtyping of recursive types were studied in the 1990s by Amadio and Cardelli; Kozen, Palsberg, and Schwartzbach; Brandt and Henglein; and others. Potential applications include automatic generation of bridge code for multilanguage systems and type-based retrieval of software modules from libraries. In this paper, we present an efficient decision procedure for a notion of type equality that includes unfolding of recursive types, and associativity and commutativity of product types. Advocated by Auerbach, Barton, and Raghavachari, these properties enable flexible matching of types. For two types of size at most n, our algorithm takes O(n) iterations each of which takes O(n) time, for a total of O(n2) time
. Higher-order programming languages, such as ML, permit a flexible programming style by using compi...
Algorithms for checking subtyping between recursive types lie at the core of many programming langua...
Inferring types for polymorphic recursive function definitions (abbreviated to polymorphic recursion...
AbstractEquality and subtyping of recursive types were studied in the 1990s by Amadio and Cardelli; ...
Abstract. Palsberg and Zhao (2000) presented an O(n2) time algorithm for matching two recursive type...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
International audienceThis work sets the formal bases for building tools that help retrieve classes ...
Abstract. Many type inference and program analysis systems include notions of subtyping and parametr...
The theory of recursive data types is a valuable modeling tool for software verifica-tion. In the pa...
The theory of recursive data types is a valuable modeling tool for software verification. In the pas...
1 Introduction The study of type isomorphisms is concerned with identifying data types by abstract-i...
Many type inference and program analysis systems include notions of subtyping and parametric polymor...
In this work, a method to formalise general recursive algorithms in constructive type theory is pres...
AbstractThe theory of recursive data types is a valuable modeling tool for software verification. In...
We consider type systems that combine universal types, recursive types, and object types. We study t...
. Higher-order programming languages, such as ML, permit a flexible programming style by using compi...
Algorithms for checking subtyping between recursive types lie at the core of many programming langua...
Inferring types for polymorphic recursive function definitions (abbreviated to polymorphic recursion...
AbstractEquality and subtyping of recursive types were studied in the 1990s by Amadio and Cardelli; ...
Abstract. Palsberg and Zhao (2000) presented an O(n2) time algorithm for matching two recursive type...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
International audienceThis work sets the formal bases for building tools that help retrieve classes ...
Abstract. Many type inference and program analysis systems include notions of subtyping and parametr...
The theory of recursive data types is a valuable modeling tool for software verifica-tion. In the pa...
The theory of recursive data types is a valuable modeling tool for software verification. In the pas...
1 Introduction The study of type isomorphisms is concerned with identifying data types by abstract-i...
Many type inference and program analysis systems include notions of subtyping and parametric polymor...
In this work, a method to formalise general recursive algorithms in constructive type theory is pres...
AbstractThe theory of recursive data types is a valuable modeling tool for software verification. In...
We consider type systems that combine universal types, recursive types, and object types. We study t...
. Higher-order programming languages, such as ML, permit a flexible programming style by using compi...
Algorithms for checking subtyping between recursive types lie at the core of many programming langua...
Inferring types for polymorphic recursive function definitions (abbreviated to polymorphic recursion...