Results 1  10
of
20
On understanding types, data abstraction, and polymorphism
 ACM COMPUTING SURVEYS
, 1985
"... Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. Objectoriented languag ..."
Abstract

Cited by 756 (15 self)
 Add to MetaCart
Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. Objectoriented languages provide both a framework and a motivation for exploring the interaction among the concepts of type, data abstraction, and polymorphism, since they extend the notion of type to data abstraction and since type inheritance is an important form of polymorphism. We develop a λcalculusbased model for type systems that allows us to explore these interactions in a simple setting, unencumbered by complexities of production programming languages. The evolution of languages from untyped universes to monomorphic and then polymorphic type systems is reviewed. Mechanisms for polymorphism such as overloading, coercion, subtyping, and parameterization are examined. A unifying framework for polymorphic type systems is developed in terms of the typed λcalculus augmented to include binding of types by quantification as well as binding of values by abstraction. The typed λcalculus is augmented by universal quantification to model generic functions with type parameters, existential quantification and packaging (information hiding) to model abstract data types, and
Propositions as [Types]
, 2001
"... Image factorizations in regular categories are stable under pullbacks, so they model a natural modal operator in dependent type theory. This unary type constructor [A] has turned up previously in a syntactic form as a way of erasing computational content, and formalizing a notion of proof irrelevanc ..."
Abstract

Cited by 22 (0 self)
 Add to MetaCart
Image factorizations in regular categories are stable under pullbacks, so they model a natural modal operator in dependent type theory. This unary type constructor [A] has turned up previously in a syntactic form as a way of erasing computational content, and formalizing a notion of proof irrelevance. Indeed, semantically, the notion of a support is sometimes used as surrogate proposition asserting inhabitation of an indexed family. We give rules for bracket types in dependent type theory and provide complete semantics using regular categories. We show that dependent type theory with the unit type, strong extensional equality types, strong dependent sums, and bracket types is the internal type theory of regular categories, in the same way that the usual dependent type theory with dependent sums and products is the internal type theory of locally cartesian closed categories. We also show how to interpret rstorder logic in type theory with brackets, and we make use of the translation to compare type theory with logic. Specically, we show that the propositionsastypes interpretation is complete with respect to a certain fragment of intuitionistic rstorder logic. As a consequence, a modied doublenegation translation into type theory (without bracket types) is complete for all of classical rstorder logic.
The identity type weak factorisation system
 U.U.D.M. REPORT 2008:20
, 2008
"... ... theory T with axioms for identity types admits a nontrivial weak factorisation system. After characterising this weak factorisation system explicitly, we relate it to the homotopy theory of groupoids. ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
... theory T with axioms for identity types admits a nontrivial weak factorisation system. After characterising this weak factorisation system explicitly, we relate it to the homotopy theory of groupoids.
Realization of natural language interfaces using lazy functional programming
 ACM Comp. Surv. 38(4) Article
, 2006
"... The construction of natural language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech recognition technology is becoming more readily available, and people cannot speak those computeroriented formal languages that are frequently used ..."
Abstract

Cited by 9 (1 self)
 Add to MetaCart
The construction of natural language interfaces to computers continues to be a major challenge. The need for such interfaces is growing now that speech recognition technology is becoming more readily available, and people cannot speak those computeroriented formal languages that are frequently used to interact with computer applications. Much of the research related to the design and implementation of natural language interfaces has involved the use of highlevel declarative programming languages. This is to be expected as the task is extremely difficult, involving syntactic and semantic analysis of potentially ambiguous input. The use of LISP and Prolog in this area is well documented. However, research involving the relatively new lazy functional programming paradigm is less well known. This paper provides a comprehensive survey of that research.
The Quest Language and System
 Digital Equipment Corporation, Systems Research
, 1994
"... 2. System tutorial 3. The big picture 3.1. Kinds, types, and values 3.2. Signatures and bindings ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
2. System tutorial 3. The big picture 3.1. Kinds, types, and values 3.2. Signatures and bindings
Naïve computational type theory
 Proof and SystemReliability, Proceedings of International Summer School Marktoberdorf, July 24 to August 5, 2001, volume 62 of NATO Science Series III
, 2002
"... The basic concepts of type theory are fundamental to computer science, logic and mathematics. Indeed, the language of type theory connects these regions of science. It plays a role in computing and information science akin to that of set theory in pure mathematics. There are many excellent accounts ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
The basic concepts of type theory are fundamental to computer science, logic and mathematics. Indeed, the language of type theory connects these regions of science. It plays a role in computing and information science akin to that of set theory in pure mathematics. There are many excellent accounts of the basic ideas of type theory, especially at the interface of computer science and logic — specifically, in the literature of programming languages, semantics, formal methods and automated reasoning. Most of these are very technical, dense with formulas, inference rules, and computation rules. Here we follow the example of the mathematician Paul Halmos, who in 1960 wrote a 104page book called Naïve Set Theory intended to make the subject accessible to practicing mathematicians. His book served many generations well. This article follows the spirit of Halmos ’ book and introduces type theory without recourse to precise axioms and inference rules, and with a minimum of formalism. I start by paraphrasing the preface to Halmos ’ book. The sections of this article follow his chapters closely. Every computer scientist agrees that every computer scientist must know some type theory; the disagreement begins in trying to decide how much is some. This article contains my partial answer to that question. The purpose of the article is to tell the beginning student of advanced computer science the basic type theoretic facts of life, and to do so with a minimum of philosophical discourse and logical formalism. The point throughout is that of a prospective computer scientist eager to study programming languages, or database systems, or computational complexity theory, or distributed systems or information discovery. In type theory, “naïve ” and “formal ” are contrasting words. The present treatment might best be described as informal type theory from a naïve point of view. The concepts are very general and very abstract; therefore they may
A polymorphic λcalculus with Type:Type
 DEC SRC, 130 Lytton Avenue, Palo Alto, CA 94301. May. SRC Research Report
, 1986
"... acknowledgment of the authors and individuals contributors to the work; and all applicable portions of the copyright notice. Copying, reproducing, or republishing for any other purpose shall require a license with payment of fee to the Systems Research Center. All rights reserved. Page 1 ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
acknowledgment of the authors and individuals contributors to the work; and all applicable portions of the copyright notice. Copying, reproducing, or republishing for any other purpose shall require a license with payment of fee to the Systems Research Center. All rights reserved. Page 1
Intuitionistic Formal Spaces
, 1989
"... This paper is exactly the same as Intuitionistic formal spaces  a first communication, in: Mathematical Logic and its Applications, D. Skordev ed., Plenum 1987, pp. 187204 by the same author, except for: (i.) the conditions on the positivity predicate (part 3. of definition 1.1 and end of section ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
This paper is exactly the same as Intuitionistic formal spaces  a first communication, in: Mathematical Logic and its Applications, D. Skordev ed., Plenum 1987, pp. 187204 by the same author, except for: (i.) the conditions on the positivity predicate (part 3. of definition 1.1 and end of section 1) and the treatment of Scott domains (section 8), which have been modified as explained in the addendum Intuitionistic formal spaces vs. Scott domains, in: Atti del Congresso Temi e prospettive della logica e della filosofia della scienza contemporanee, vol. 1, CLUEB, Bologna 1988, pp. 159163; (ii.) the correction of some of the misprints; (iii.) one change in notation (now \Delta is used for covering relations, rather than ) and one in terminology (now `weak transitivity' replaces `weakening'). For an update on the development of formal topology, see the survey Formal topology  twelve years of development, in preparation, by the same author.