Results 1 
7 of
7
Computational Interpretations of Linear Logic
 Theoretical Computer Science
, 1993
"... We study Girard's Linear Logic from the point of view of giving a concrete computational interpretation of the logic, based on the CurryHoward isomorphism. In the case of Intuitionistic Linear Logic, this leads to a refinement of the lambda calculus, giving finer control over order of evaluati ..."
Abstract

Cited by 283 (3 self)
 Add to MetaCart
We study Girard's Linear Logic from the point of view of giving a concrete computational interpretation of the logic, based on the CurryHoward isomorphism. In the case of Intuitionistic Linear Logic, this leads to a refinement of the lambda calculus, giving finer control over order of evaluation and storage allocation, while maintaining the logical content of programs as proofs, and computation as cutelimination.
On the Expressive Power of Programming Languages
 Science of Computer Programming
, 1990
"... The literature on programming languages contains an abundance of informal claims on the relative expressive power of programming languages, but there is no framework for formalizing such statements nor for deriving interesting consequences. As a first step in this direction, we develop a formal noti ..."
Abstract

Cited by 136 (6 self)
 Add to MetaCart
The literature on programming languages contains an abundance of informal claims on the relative expressive power of programming languages, but there is no framework for formalizing such statements nor for deriving interesting consequences. As a first step in this direction, we develop a formal notion of expressiveness and investigate its properties. To validate the theory, we analyze some widely held beliefs about the expressive power of several extensions of functional languages. Based on these results, we believe that our system correctly captures many of the informal ideas on expressiveness, and that it constitutes a foundation for further research in this direction. 1 Comparing Programming Languages The literature on programming languages contains an abundance of informal claims on the expressive power of programming languages. Arguments in these contexts typically assert the expressibility or nonexpressibility of programming constructs relative to a language. Unfortunately, pro...
CallByPushValue: A Subsuming Paradigm
 in Proc. TLCA ’99
, 1999
"... . Callbypushvalue is a new paradigm that subsumes the callbyname and callbyvalue paradigms, in the following sense: both operational and denotational semantics for those paradigms can be seen as arising, via translations that we will provide, from similar semantics for callbypushvalue. To ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
. Callbypushvalue is a new paradigm that subsumes the callbyname and callbyvalue paradigms, in the following sense: both operational and denotational semantics for those paradigms can be seen as arising, via translations that we will provide, from similar semantics for callbypushvalue. To explain callbypushvalue, we first discuss general operational ideas, especially the distinction between values and computations, using the principle that "a value is, a computation does". Using an example program, we see that the lambdacalculus primitives can be understood as push/pop commands for an operandstack. We provide operational and denotational semantics for a range of computational effects and show their agreement. We hence obtain semantics for callbyname and callbyvalue, of which some are familiar, some are new and some were known but previously appeared mysterious. 1 Introduction 1.1 Contribution In his invited lecture at POPL '98 [32], Reynolds, surveying over 30 year...
A Study of Semantics, Types, and Languages for Databases and Object Oriented Programming
, 1989
"... The purpose of this thesis is to investigate a type system for databases and objectoriented programming and to design a statically typed programming language for these applications. Such a language should ideally have a static type system that supports: • polymorphism and static type inference, • r ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
The purpose of this thesis is to investigate a type system for databases and objectoriented programming and to design a statically typed programming language for these applications. Such a language should ideally have a static type system that supports: • polymorphism and static type inference, • rich data structures and operations to represent various data models for databases including the relational model and more recent complex object models, • central features of objectoriented programming including user definable class hierarchies, multiple inheritance, and data abstraction, • the notion of extents and objectidentities for objectoriented databases. Without a proper formalism, it is not obvious that the construction of such a type system is possible. This thesis attempts to construct one such formalism and proposes a programming language that uniformly integrate all of the above features. The specific contributions of this thesis include: • A simple semantics for ML polymorphism and axiomatization of the equational theory of ML. • A uniform generalization of the relational model to arbitrary complex database objects that
A stable programming language
 I&C
"... It is wellknown that stable models (as dIdomains, qualitative domains and coherence spaces) are not fully abstract for the languagePCF. This fact is related to the existence of stable parallel functions and of stable functions that are not monotone with respect to the extensional order, which cann ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
It is wellknown that stable models (as dIdomains, qualitative domains and coherence spaces) are not fully abstract for the languagePCF. This fact is related to the existence of stable parallel functions and of stable functions that are not monotone with respect to the extensional order, which cannot be defined by programs ofPCF. In this paper, a paradigmatic programming language namedStPCF is proposed, which extends the languagePCF with two additional operators. The operational description of the extended language is presented in an effective way, although the evaluation of one of the new operators cannot be formalized in a PCFlike rewrite system. SinceStPCF can define all finite cliques of coherence spaces the above gap with stable models is filled, consequently stable models are fully abstract for the extended language. 1
Computing with continuous change
"... A central challenge in computer science and knowledge representation is the integration of conceptual frameworks for continuous and discrete change, as exemplified by the theory of differential equations and real analysis on the one hand, and the theory of programming languages on the other. We take ..."
Abstract
 Add to MetaCart
A central challenge in computer science and knowledge representation is the integration of conceptual frameworks for continuous and discrete change, as exemplified by the theory of differential equations and real analysis on the one hand, and the theory of programming languages on the other. We take the first steps towards such an integrated theory by presenting a recipe for the construction of continuous programming languages — languages in which state dynamics can be described by differential equations. The basic idea is to start with an untimed language and extend it uniformly over dense (real) time. We present a concrete mathematical model and language (the Hybrid concurrent constraint programming model, Hybrid cc) instantiating these ideas. The language is intended to be used for modeling and programming hybrid systems. The language is declarative — programs can be understood as formulas that place constraints on the (temporal) evolution of the system, with parallel composition regarded as conjunction. It is expressive — it allows the definition of continuous versions of the preemption control constructs.