Results 1 
5 of
5
Objects, Interference, and the Yoneda Embedding
, 1995
"... We present a new semantics for Algollike languages that combines methods from two prior lines of development: ffl the objectbased approach of [21,22], where the meaning of an imperative program is described in terms of sequences of observable actions, and ffl the functorcategory approach initiat ..."
Abstract

Cited by 16 (7 self)
 Add to MetaCart
We present a new semantics for Algollike languages that combines methods from two prior lines of development: ffl the objectbased approach of [21,22], where the meaning of an imperative program is described in terms of sequences of observable actions, and ffl the functorcategory approach initiated by Reynolds [24], where the varying nature of the runtime stack is explained using functors from a category of store shapes to a category of cpos. The semantics
Object connectivity and full abstraction for a concurrent calculus of classes
 In Proc. ICTAC 2004, vol 3704 of LNCS
, 2005
"... Abstract. The concurrent object calculus has been investigated as a core calculus for imperative, objectoriented languages with multithreading and heapallocated objects. The combination of this form of concurrency with objects corresponds to features known from the popular language Java. One disti ..."
Abstract

Cited by 13 (7 self)
 Add to MetaCart
Abstract. The concurrent object calculus has been investigated as a core calculus for imperative, objectoriented languages with multithreading and heapallocated objects. The combination of this form of concurrency with objects corresponds to features known from the popular language Java. One distinctive feature, however, of the concurrent object calculus is that it is objectbased, whereas the mainstream of objectoriented languages is classbased. This work explores the semantical consequences of introducing classes to the calculus. Considering classes as part of a component makes instantiation a possible interaction between component and environment. A striking consequence is that in order to characterize the observable behavior we must take connectivity information into account, i.e., the way objects may have knowledge of each other. In particular, unconnected environment objects can neither determine the absolute order of interaction and furthermore cannot exchange information to compare object identities. We formulate an operational semantics that incorporates the connectivity information into the scoping mechanism of the calculus. As instantiation itself is unobservable, objects are instantiated only when accessed for the first time (“lazy instantiation”). Furthermore we use a corresponding trace semantics for full abstraction wrt. a maytesting based notion of observability.
Abstract Effects and ProofRelevant Logical Relations
"... We introduce a novel variant of logical relations that maps types not merely to partial equivalence relations on values, as is commonly done, but rather to a proofrelevant generalisation thereof, namely setoids. The objects of a setoid establish that values inhabit semantic types, whilst its morph ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We introduce a novel variant of logical relations that maps types not merely to partial equivalence relations on values, as is commonly done, but rather to a proofrelevant generalisation thereof, namely setoids. The objects of a setoid establish that values inhabit semantic types, whilst its morphisms are understood as proofs of semantic equivalence. The transition to proofrelevance solves two wellknown problems caused by the use of existential quantification over future worlds in traditional Kripke logical relations: failure of admissibility, and spurious functional dependencies. We illustrate the novel format with two applications: a directstyle validation of Pitts and Stark’s equivalences for “new” and a denotational semantics for a regionbased effect system that supports type abstraction in the sense that only externally visible effects need to be tracked; nonobservable internal modifications, such as the reorganisation of a search tree or lazy initialisation, can count as ‘pure’ or ‘read only’. This ‘fictional purity’ allows clients of a module soundly to validate more effectbased program equivalences than would be possible with traditional effect systems.
Action Calculi III : Higherorder Calculi
 Typescript
, 1993
"... This paper extends an arbitrary action calculus [11] to higher order, in a way which parallels the extension of the calculus [13] to higher order by Sangiorgi [18]. Action calculi are a subclass of action structures [10], which in turn are an enriched class of monoidal categories. Each action calcu ..."
Abstract
 Add to MetaCart
This paper extends an arbitrary action calculus [11] to higher order, in a way which parallels the extension of the calculus [13] to higher order by Sangiorgi [18]. Action calculi are a subclass of action structures [10], which in turn are an enriched class of monoidal categories. Each action calculus AC(K) is distinguished by its set K of controls and their reaction rules. The notion of action calculus is derived partly from the chemical abstract machine of Berry and Boudol [5]. To each control K 2 K corresponds a type of molecule; the main interest of action calculi is that they are an algebra of molecular forms, which provide a nonfree but algebraically tractable form of syntax for modelling concurrent systems.
ProofRelevant Logical Relations for Name Generation
"... Abstract. Pitts and Stark’s νcalculus is a paradigmatic total language for studying the problem of contextual equivalence in higherorder languages with name generation. Models for the νcalculus that validate basic equivalences concerning names may be constructed using functor categories or nomina ..."
Abstract
 Add to MetaCart
Abstract. Pitts and Stark’s νcalculus is a paradigmatic total language for studying the problem of contextual equivalence in higherorder languages with name generation. Models for the νcalculus that validate basic equivalences concerning names may be constructed using functor categories or nominal sets, with a dynamic allocation monad used to model computations that may allocate fresh names. If recursion is added to the language and one attempts to adapt the models from (nominal) sets to (nominal) domains, however, the directstyle construction of the allocation monad no longer works. This issue has previously been addressed by using a monad that combines dynamic allocation with continuations, at some cost to abstraction. This paper presents a directstyle model of a νcalculuslike language with recursion using the novel framework of proofrelevant logical relations, in which logical relations also contain objects (or proofs) demonstrating the equivalence of (the semantic counterparts of) programs. Apart from providing a fresh solution to an old problem, this work provides an accessible setting in which to introduce the use of proofrelevant logical relations, free of the additional complexities associated with their use for more sophisticated languages. 1