Results 11 
18 of
18
A Categorical Account of TwoLevel Languages
 In MFPS
, 1997
"... We give an account of twolevel languages in terms of indexed categories and universal properties wellknown in the context of categorical logic. This account provides three important insights: establishes precise analogies between twolevel languages and module languages, explains the twolevel lan ..."
Abstract

Cited by 18 (4 self)
 Add to MetaCart
We give an account of twolevel languages in terms of indexed categories and universal properties wellknown in the context of categorical logic. This account provides three important insights: establishes precise analogies between twolevel languages and module languages, explains the twolevel languages used in partial evaluation (see [7]) in terms of those used for code generation (see [16]), suggests extensions that should be valuable for typespecialization (see [9]) and shapeanalysis (see [1]).
From HindleyMilner types to firstclass structures
 In Proceedings of the Haskell Workshop
, 1995
"... We describe extensions of the HindleyMilner type system to support higherorder polymorphism and firstclass structures with polymorphic components. The combination of these features results in a ‘core language ’ that rivals the expressiveness of the Standard ML module system in some respects and e ..."
Abstract

Cited by 14 (0 self)
 Add to MetaCart
We describe extensions of the HindleyMilner type system to support higherorder polymorphism and firstclass structures with polymorphic components. The combination of these features results in a ‘core language ’ that rivals the expressiveness of the Standard ML module system in some respects and exceeds it in others. 1
A Characterization Of Lambda Definability In Categorical Models Of Implicit Polymorphism
 Theoretical Computer Science
, 1995
"... . Lambda definability is characterized in categorical models of simply typed lambda calculus with type variables. A categorytheoretic framework known as glueing or sconing is used to extend the JungTiuryn characterization of lambda definability [JuT93], first to ccc models, and then to categor ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
. Lambda definability is characterized in categorical models of simply typed lambda calculus with type variables. A categorytheoretic framework known as glueing or sconing is used to extend the JungTiuryn characterization of lambda definability [JuT93], first to ccc models, and then to categorical models of the calculus with type variables. Logical relations are now a wellestablished tool for studying the semantics of various typed lambda calculi. The main lines of research are focused in two areas, the first of which strives for an understanding of Strachey's notion of parametric polymorphism. The main idea is that a parametricly polymorphic function acts independently from the types to which its type variables are instantiated, and that this uniformity may be captured by imposing a relational structure on the types [OHT93, MSd93, MaR91, Wad89, Rey83, Str67]. The other line of research concerns lambda definability and the full abstraction problem for various models of languag...
Relational Databases and Indexed Categories
 In Proceedings of the International Category Theory Meeting 1991, CMS Conference Proceedings 13, 391407, American Mathematical Society
, 1992
"... . A description of relational databases in categorical terminology given here has as intended application the study of database dynamics, in particular we view (i) updates as database objects in a suitable category indexed by a topos; (ii) Lfuzzy databases as database objects in sheaves. Indexed ca ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
. A description of relational databases in categorical terminology given here has as intended application the study of database dynamics, in particular we view (i) updates as database objects in a suitable category indexed by a topos; (ii) Lfuzzy databases as database objects in sheaves. Indexed categories are constructed to model the databases on a fixed family of domains and also all databases for a varying family of domains. Further, we show that the process of constructing the relational completion of a relational database is a monad in a 2category of functors. Introduction We use the term relation for a subobject of a finite product of objects in a category. Following the relational database literature, we use the term domain for an object of the ambient category (and warn readers that these are not the ordered objects which go by the name "domain" elsewhere in theoretical Computer Science.) A relational database, as defined by E. F. Codd [3], is first of all a family of rela...
On Cubism
"... A number of difficulties in the formalism of Pure Type Systems (PTS's) is discussed and an alternative classification system for typed calculi is proposed. In the new approach the main novelty is that one first explicitly specifies the dependencies that may occur. This is especially useful in order ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
A number of difficulties in the formalism of Pure Type Systems (PTS's) is discussed and an alternative classification system for typed calculi is proposed. In the new approach the main novelty is that one first explicitly specifies the dependencies that may occur. This is especially useful in order to describe constants. But it also facilitates the description of other type theoretic features, like dependent sums. Capsule review The paper reexamines the classification of typed lambda calculi as pure type systems, put forward by Barendregt. A problematic aspect of the PTSframework is the incorporation of constants: this can be done, but at the cost of ad hoc extensions with products. The paper proposes an alternative description of type systems, essentially by enriching PTS's, with settings plus features, obtaining a neat mechanism for handling constants. 1 Introduction The phrase cubism will be used for the school that advocates classification of typed calculi in terms of Pure Typ...
Categorical Properties of Logical Frameworks
, 1993
"... In this paper we give a new presentation of ELF which is wellsuited for semantic analysis. We introduce the notions of internal codability, internal definability, internal typed calculi and frame languages. These notions are central to our perspective of logical frameworks. We will argue that a ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
In this paper we give a new presentation of ELF which is wellsuited for semantic analysis. We introduce the notions of internal codability, internal definability, internal typed calculi and frame languages. These notions are central to our perspective of logical frameworks. We will argue that a logical framework is a typed calculus which formalizes the relationship between internal typed languages and frame languages. In the second half of the paper, we demonstrate the advantage of our logical framework by showing some categorical properties of it and of encodings in it. By doing so we hope to indicate a sensible model theory of encodings. Copyright c fl1993. All rights reserved. Reproduction of all or part of this work is permitted for educational or research purposes on condition that (1) this copyright notice is included, (2) proper attribution to the author or authors is made and (3) no commercial gain is involved. Technical Reports issued by the Department of Computer Sc...
The Arrow Manifesto: Towards software engineering based on comprehensible yet rigorous graphical specifications
"... . A novel formalizable specification paradigm is proposed which makes it possible to solve a lot of specification problems in software. The roots of the idea are in mathematical category theory; following its terminology we call our specifications sketches. Among the principal advantages of sketches ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
. A novel formalizable specification paradigm is proposed which makes it possible to solve a lot of specification problems in software. The roots of the idea are in mathematical category theory; following its terminology we call our specifications sketches. Among the principal advantages of sketches are the following. ffl Nice amalgamation of logical rigor and graphical evidence. Sketches are graphbased images yet they are precise formal specifications as rigor as, say, first order logic theories. ffl Universality, in the precise sense of the word. It can be mathematically proven that any specification whose semantic meaning can be formalized can be also expressed by a sketch. ffl Unifying power. Many of graphical specification languages can be simulated by sketches in the corresponding signature of diagram markers. ffl Semantic capabilities. The sketch language is inherently objectoriented and provides a quite natural way of specifying OO classreference schemas. ffl Easy and f...
Typed Intermediate Languages for ShapeAnalysis
 In Typed Lambda Calculi and Applications (TLCA'97), Lecture Notes in Computer Science 1210
, 1997
"... We introduce S2, a typed intermediate language for vectors, based on a 2level typetheory, which distinguishes between compiletime and runtime. The paper shows how S2 can be used to extract useful information from programs written in the Nested Sequence Calculus NSC, an idealized highlevel parall ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We introduce S2, a typed intermediate language for vectors, based on a 2level typetheory, which distinguishes between compiletime and runtime. The paper shows how S2 can be used to extract useful information from programs written in the Nested Sequence Calculus NSC, an idealized highlevel parallel calculus for nested sequences. We study two translations from NSC to S2. The most interesting shows that shape analysis (in the sense of Jay) can be handled at compiletime. Introduction Good intermediate languages are an important prerequisite for program analysis and optimization, the main purpose of such languages is to make as explicit as possible the information that is only implicit in source programs (see [18]). A common features of such intermediate languages is an aggressive use of types to incorporate additional information, e.g.: binding times (see [18]), boxed/unboxed values (see [20]), effects (see [23]). In particular, among the ML community the use of types in intermediat...