Virtual classes [MMP89] are a very useful language construct introduced in the language Beta which provide for a mechanism similar to that of parametric polymorphism. Unfortunately, the virtual class construct in Beta is not statically type-safe. In this paper we show how a generalization of the semantics of object-oriented languages with a MyType construct led to the discovery of a variant of virtual classes which need no run-time checks. This results in an object-oriented language in which both parametric types and virtual classes (or types) are well-integrated, and which is statically type-safe. Keywords: Language design, semantics, virtual classes, parametric polymorphism, static type checking 1 Introduction In this paper we show how ...
Beginning with BETA, a range of programming language mechanisms such as virtual classes (class-value...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
We present a runtime metalevel interface for BETA. BETA is a compiled and statically typed object-or...
AbstractThe virtual class [15] construct was first introduced in the language Beta to provide added ...
. Parametric types and virtual types have recently been proposed as extensions to Java to support ge...
Virtual classes are class-valued attributes of objects. Like virtual methods, virtual classes are de...
Virtual classes are class-valued attributes of objects.Like virtual methods, virtual classes are def...
Virtual classes are class-valued attributes of objects. Like virtual methods, virtual classes are de...
Abstract. Generic types in programming languages are most often supported with various forms of para...
. Virtual types have been proposed as a notation for generic programming in object-oriented languag...
AbstractVirtual types have been proposed as a notation for generic programming in object-oriented la...
The notions of class, subclass and virtual procedure are fairly well understood and recognized as so...
The notations of class, subclass and virtual procedure are fairly well understood and recognized as...
Abstract This paper suggests virtual types for Java, a language mechanism which subsumes parameteriz...
Inheritance together with virtual functions in C++ provides programmers much polymorphism, an import...
Beginning with BETA, a range of programming language mechanisms such as virtual classes (class-value...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
We present a runtime metalevel interface for BETA. BETA is a compiled and statically typed object-or...
AbstractThe virtual class [15] construct was first introduced in the language Beta to provide added ...
. Parametric types and virtual types have recently been proposed as extensions to Java to support ge...
Virtual classes are class-valued attributes of objects. Like virtual methods, virtual classes are de...
Virtual classes are class-valued attributes of objects.Like virtual methods, virtual classes are def...
Virtual classes are class-valued attributes of objects. Like virtual methods, virtual classes are de...
Abstract. Generic types in programming languages are most often supported with various forms of para...
. Virtual types have been proposed as a notation for generic programming in object-oriented languag...
AbstractVirtual types have been proposed as a notation for generic programming in object-oriented la...
The notions of class, subclass and virtual procedure are fairly well understood and recognized as so...
The notations of class, subclass and virtual procedure are fairly well understood and recognized as...
Abstract This paper suggests virtual types for Java, a language mechanism which subsumes parameteriz...
Inheritance together with virtual functions in C++ provides programmers much polymorphism, an import...
Beginning with BETA, a range of programming language mechanisms such as virtual classes (class-value...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
We present a runtime metalevel interface for BETA. BETA is a compiled and statically typed object-or...