| L.Cardelli: Typeful programming, Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. SRC Report #45, Digital Equipment Corporation, 1989. |
....type inference for F should at least be easier than for F 2 . We note, however, that F is not simply an esoteric variation on F 2 , since it has been proposed as the mathematical foundation for a new generation of typed functional programming languages, for example Cardelli s language Quest [Car89], and the language LEAP of Pfenning and Lee [PL89] The practical use of such languages, however, is considerably hampered by the absence of any type inference algorithm, forcing the programmer into detail and debugging of types as well as of the program. Some arguments have been made that the ....
L. Cardelli. Typeful programming. Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. See also SRC Report 45, Digital Equipment Corporation.
....done along purely logical lines, will carry through for many kinds of data types. 1.6 Contravariance The function space constructor is contravariant because logical implication satisfies principles of contravariance. Here is a typical rule for subtyping in a programming language (see, e.g. [Car89, Bru92]) Gamma A 0 : A Gamma B : B 0 Gamma A B : A 0 B 0 Why does this rule need to be mandated ex nihilo when it follows, in the right framework, from principles of logic It ought to be a derived rule. In CC, suppose we have terms ff and fi where ff : Subtype A 0 A = fx : ....
L. Cardelli. Typeful programming. Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. See also SRC Report 45, Digital Equipment Corporation.
....6. Conclusions Acknowledgements References Page 3 1. Introduction Type theory provides a general framework for studying many advanced programming features including polymorphism, abstract types, modules, and inheritance. See [Cardelli Wegner 85] for a survey. The Quest programming language [Cardelli 89] attempts to take advantage of this general framework to integrate such programming constructs into a flexible and consistent whole. In this paper we focus on the Quest type system, by describing and modeling its most interesting features. At the core of this system is a three level structure of ....
.... S(X : age:Int ) Bounded existential quantifiers also model types that are subtypes of abstract or partially abstract types: S(X : age:Int ) S(Y :X) These last two features are present, in specific forms, in Modula 3 [Cardelli Donahue Glassman Jordan Kalsow Nelson 88] We refer to [Cardelli 89] for detailed programming examples that use the full power of the system. The paper is organized as follows. Section 2 describes the formal theory of Quest, including its typing rules, and can be understood on its own. Sections 3, 4, and 5 are more technical and are concerned with semantics. ....
L.Cardelli: Typeful programming, Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. SRC Report #45, Digital Equipment Corporation, 1989.
....6. Conclusions Acknowledgements References Page 3 1. Introduction Type theory provides a general framework for studying many advanced programming features including polymorphism, abstract types, modules, and inheritance. See [Cardelli Wegner 85] for a survey. The Quest programming language [Cardelli 89] attempts to take advantage of this general framework to integrate such programming constructs into a flexible and consistent whole. In this paper we focus on the Quest type system, by describing and modeling its most interesting features. At the core of this system is a three level structure of ....
.... S(X : age:Int ) Bounded existential quantifiers also model types that are subtypes of abstract or partially abstract types: S(X : age:Int ) S(Y :X) These last two features are present, in specific forms, in Modula 3 [Cardelli Donahue Glassman Jordan Kalsow Nelson 88] We refer to [Cardelli 89] for detailed programming examples that use the full power of the system. The paper is organized as follows. Section 2 describes the formal theory of Quest, including its typing rules, and can be understood on its own. Sections 3, 4, and 5 are more technical and are concerned with semantics. ....
L.Cardelli: Typeful programming, Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. SRC Report #45, Digital Equipment Corporation, 1989.
....References . 1. Introduction Type theory provides a general framework for studying many advanced programming features including polymorphism, abstract types, modules, and inheritance. See [Cardelli Wegner 85] for a survey. The Quest programming language [Cardelli 89] attempts to take advantage of this general framework to integrate such programming constructs into a flexible and consistent whole. In this paper we focus on the Quest type system, by describing and modeling its most interesting features. At the core of this system is a threelevel structure of ....
.... S(X : age:Int ) Bounded existential quantifiers also model types that are subtypes of abstract or partially abstract types: S(X : age:Int ) S(Y :X) These last two features are present, in specific forms, in Modula 3 [Cardelli Donahue Glassman Jordan Kalsow Nelson 88] We refer to [Cardelli 89] for detailed programming examples that use the full power of the system. The paper is organized as follows. Section 2 describes the formal theory of Quest, including its typing rules, and can be understood on its own. Sections 3, 4, and 5 are more technical and are concerned with semantics. ....
L.Cardelli: Typeful programming, Lecture Notes for the IFIP Advanced Seminar on Formal Methods in Programming Language Semantics, Rio de Janeiro, Brazil, 1989. SRC Report #45, Digital Equipment Corporation, 1989.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC