Type dispatch constructs are an important feature of many programming languages. Scheme has predicates for testing the runtime type of a value. Java has a class cast expression and a try statement for switching on an exception's class. Crucial to these mechanisms, in typed languages, is type refinement: The static type system will use type dispatch to refine types in successful dispatch branches. Existing work in functional languages has addressed certain kinds of type dispatch, namely, intensional type analysis. However, this work does not extend to languages with subtyping nor to named types. This paper describes a number of type dispatch constructs that share a common theme: class cast and class case constructs in object oriented la...
We present an operational semantics, type system, and a proof of type soundness for a substantial su...
© Yanlin Wang, Haoyuan Zhang, Bruno C. d. S. Oliveira, and Marco Servetto. Multiple inheritance is a...
We present a new language feature, specified as an extension to Java. The feature is a form of dispa...
Type dispatch constructs are an important feature of many programming languages. Scheme has predica...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
AbstractGoals of flexibility and re-usability in typed object-oriented languages suggest the require...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
In java, method dispatch is done at runtime, by late-binding, with respect to the dynamic type of th...
Abstract Run-time type dispatch enables a variety of advanced optimization techniques for polymorphi...
We present an operational semantics, type system, and a proof of type soundness for a substantial su...
© Yanlin Wang, Haoyuan Zhang, Bruno C. d. S. Oliveira, and Marco Servetto. Multiple inheritance is a...
We present a new language feature, specified as an extension to Java. The feature is a form of dispa...
Type dispatch constructs are an important feature of many programming languages. Scheme has predica...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type dispatch constructs are an important feature of many programming languages. Scheme has predicat...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
AbstractGoals of flexibility and re-usability in typed object-oriented languages suggest the require...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
In java, method dispatch is done at runtime, by late-binding, with respect to the dynamic type of th...
Abstract Run-time type dispatch enables a variety of advanced optimization techniques for polymorphi...
We present an operational semantics, type system, and a proof of type soundness for a substantial su...
© Yanlin Wang, Haoyuan Zhang, Bruno C. d. S. Oliveira, and Marco Servetto. Multiple inheritance is a...
We present a new language feature, specified as an extension to Java. The feature is a form of dispa...