Results 21  30
of
43
An Introduction to Polymorphic Lambda Calculus
 Logical Foundations of Functional Programming
, 1994
"... Introduction to the Polymorphic Lambda Calculus John C. Reynolds Carnegie Mellon University December 23, 1994 The polymorphic (or secondorder) typed lambda calculus was invented by JeanYves Girard in 1971 [11, 10], and independently reinvented by myself in 1974 [24]. It is extraordinary that ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
(Show Context)
Introduction to the Polymorphic Lambda Calculus John C. Reynolds Carnegie Mellon University December 23, 1994 The polymorphic (or secondorder) typed lambda calculus was invented by JeanYves Girard in 1971 [11, 10], and independently reinvented by myself in 1974 [24]. It is extraordinary that essentially the same programming language was formulated independently by the two of us, especially since we were led to the language by entirely different motivations. In my own case, I was seeking to extend conventional typed programming languages to permit the definition of "polymorphic" procedures that could accept arguments of a variety of types. I started with the ordinary typed lambda calculus and added the ability to pass types as parameters (an idea that was "in the air" at the time, e.g. [4]). For example, as in the ordinary typed lambda calculus one can write f int!int : x int : f(f (x)) to denote the "doubling" function for the type int, which accepts a function from integers
Functionality, polymorphism, and concurrency: a mathematical investigation of programming paradigms
, 1997
"... ..."
Polymorphic Linear Logic and Topos Models
 Math. Reports, Academy of Science (Canada) XII
, 1990
"... We give a definition of a "linear fibration", which is a hyperdoctrine model of polymorphic linear logic, and show how to internalise the fibration, generating topos models. This gives a constructive set theoretical context for the logic of Petri nets, as recently developed by N. Mart&apos ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
We give a definition of a "linear fibration", which is a hyperdoctrine model of polymorphic linear logic, and show how to internalise the fibration, generating topos models. This gives a constructive set theoretical context for the logic of Petri nets, as recently developed by N. Mart'iOliet and J. Meseguer. Also, we sketch how this can be further extended to include the exponential operator ! . In this context, the topos model we construct can be embedded in the model constructed by A.M. Pitts. 0 Introduction In [4], it is shown how to enrich the logic of Petri nets with gedanken states and processes, by embedding it into linear logic. Recently, Mart'iOliet and Meseguer have asked how to extend this even further to include polymorphism. It turns out that the process is fairly straightforward, and for maximal impact (so as to include constructive set theory), can be internalised to give topos models of polymorphic linear logic. Here we give the necessary definitions, and sketch the ...
Categorical programming for data types with restricted parametricity. Manuscript, submitted to PostProc
 of TFP
"... Abstract. Many concepts from category theory have proven useful as tools for program abstraction, particularly in functional programming. For example, many parametric data types admit operations defining a functor and related structures such as a monad. However, some parametric data types whose oper ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
Abstract. Many concepts from category theory have proven useful as tools for program abstraction, particularly in functional programming. For example, many parametric data types admit operations defining a functor and related structures such as a monad. However, some parametric data types whose operations are restricted in their parametricity are not amenable to traditional categorytheoretic abstractions in Haskell, despite appearing to satisfy the mathematical definitions. This paper explains the limitations of various traditional categorytheoretic approaches in Haskell, giving a precise account of their categorytheoretic meaning and the categorical implications of restricted parametricity arising from adhoc polymorphism provided by type classes in Haskell. Following from this analysis, we generalise Haskell’s notions of functors, monads and comonads, making use of GHC’s new constraint kinds extension, providing techniques for structuring programs with both unrestricted and restricted polymorphism.
Multiversal polymorphic algebraic theories
 Proc. LICS
, 2013
"... Abstract—We formalise and study the notion of polymorphic algebraic theory, as understood in the mathematical vernacular as a theory presented by equations between polymorphicallytyped terms with both type and term variable binding. The prototypical example of a polymorphic algebraic theory is Syst ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract—We formalise and study the notion of polymorphic algebraic theory, as understood in the mathematical vernacular as a theory presented by equations between polymorphicallytyped terms with both type and term variable binding. The prototypical example of a polymorphic algebraic theory is System F, but our framework applies more widely. The extra generality stems from a mathematical analysis that has led to a unified theory of polymorphic algebraic theories with the following ingredients: polymorphic signatures that specify arbitrary polymorphic operators (e.g. as in extended λcalculi and algebraic effects); metavariables, both for types and terms, that enable the generic description of metatheories; multiple type universes that allow a notion of translation between theories that is parametric over different type universes; polymorphic structures that provide a general notion of algebraic model (including the PLcategory semantics of System F); a Polymorphic Equational Logic that constitutes a sound and complete logical framework for equational reasoning. Our work is semantically driven, being based on a hierarchical twolevelled algebraic modelling of abstract syntax with variable binding. Index Terms—polymorphism, equational logic, presheaves, categorical semantics, the Grothendieck construction
Bunching for Regions and Locations
 MFPS 2006
, 2006
"... There are a number of applied lambdacalculi in which terms and types are annotated with parameters denoting either locations or locations in machine memory. Such calculi have been designed with safe memorymanagement operations in mind. It is difficult to construct directly denotational models for ..."
Abstract
 Add to MetaCart
There are a number of applied lambdacalculi in which terms and types are annotated with parameters denoting either locations or locations in machine memory. Such calculi have been designed with safe memorymanagement operations in mind. It is difficult to construct directly denotational models for existing calculi of this kind. We approach the problem differently, by starting from a class of mathematical models that describe some of the essential semantic properties intended in these calculi. In particular, disjointness conditions between regions (or locations) are implicit in many of the memorymanagement operations. Bunched polymorphism provides natural typetheoretic mechanisms for capturing the disjointness conditions in such models. We illustrate this by adding regions to the basic disjointness model of αλ, the lambdacalculus associated to the logic of bunched implications. We show how both additive and multiplicative polymorphic quantifiers arise naturally in our models. A locations model is a special case. In order to relate this enterprise back to previous work on memorymanagement, we provide an example in which the model is refined and used to provide a denotational semantics for a language with explicit allocation and disposal of regions.
REFLECTIONS ON FORMALISM AND REDUCTIONISM IN LOGIC AND COMPUTER SCIENCE
"... This report contains a preprint (paper 1) and a reprint (paper 2). The first develops some epistemological views which were hinted in the second, in particular by stressing the need of a greater role of geometric insight and images in foundational studies and in approaches to cognition. The second p ..."
Abstract
 Add to MetaCart
This report contains a preprint (paper 1) and a reprint (paper 2). The first develops some epistemological views which were hinted in the second, in particular by stressing the need of a greater role of geometric insight and images in foundational studies and in approaches to cognition. The second paper is the "philosophical " part of a lecture in Type Theory, whose technical sections, omitted here, have been largely subsumed by
Bifibrational functorial semantics of parametric polymorphism
"... Reynolds ’ theory of parametric polymorphism captures the invariance of polymorphically typed programs under change of data representation. Reflexive graph categories and fibrations are both known to give a categorical understanding of parametric polymorphism. This paper contributes further to this ..."
Abstract
 Add to MetaCart
(Show Context)
Reynolds ’ theory of parametric polymorphism captures the invariance of polymorphically typed programs under change of data representation. Reflexive graph categories and fibrations are both known to give a categorical understanding of parametric polymorphism. This paper contributes further to this categorical perspective on parametricity by showing the relevance of bifibrations. Using bifibrations, it develops a framework for models of System F that are parametric, in that they verify the Identity Extension Lemma and Reynolds ’ Abstraction Theorem. We also prove that our models satisfy expected properties, such as the existence of initial algebras and final coalgebras, and that parametricity implies dinaturality.