Results 1  10
of
80
Definitional interpreters for higherorder programming languages
 Reprinted from the proceedings of the 25th ACM National Conference
, 1972
"... Abstract. Higherorder programming languages (i.e., languages in which procedures or labels can occur as values) are usually defined by interpreters that are themselves written in a programming language based on the lambda calculus (i.e., an applicative language such as pure LISP). Examples include ..."
Abstract

Cited by 300 (2 self)
 Add to MetaCart
Abstract. Higherorder programming languages (i.e., languages in which procedures or labels can occur as values) are usually defined by interpreters that are themselves written in a programming language based on the lambda calculus (i.e., an applicative language such as pure LISP). Examples include McCarthy’s definition of LISP, Landin’s SECD machine, the Vienna definition of PL/I, Reynolds ’ definitions of GEDANKEN, and recent unpublished work by L. Morris and C. Wadsworth. Such definitions can be classified according to whether the interpreter contains higherorder functions, and whether the order of application (i.e., call by value versus call by name) in the defined language depends upon the order of application in the defining language. As an example, we consider the definition of a simple applicative programming language by means of an interpreter written in a similar language. Definitions in each of the above classifications are derived from one another by informal but constructive methods. The treatment of imperative features such as jumps and assignment is also discussed.
Continuations: A Mathematical Semantics for Handling Full Jumps
, 1974
"... Abstract. This paper describes a method of giving the mathematical semantics of programming languages which include the most general form of jumps. 1. ..."
Abstract

Cited by 110 (0 self)
 Add to MetaCart
Abstract. This paper describes a method of giving the mathematical semantics of programming languages which include the most general form of jumps. 1.
Hereditarily Sequential Functionals
 In Proceedings of the Symposium on Logical Foundations of Computer Science: Logic at St. Petersburg, Lecture notes in Computer Science
, 1994
"... In order to define models of simply typed functional programming languages being closer to the operational semantics of these languages, the notions of sequentiality, stability and seriality were introduced. These works originated from the definability problem for PCF, posed in [Sco72], and the full ..."
Abstract

Cited by 59 (0 self)
 Add to MetaCart
In order to define models of simply typed functional programming languages being closer to the operational semantics of these languages, the notions of sequentiality, stability and seriality were introduced. These works originated from the definability problem for PCF, posed in [Sco72], and the full abstraction problem for PCF, raised in [Plo77]. The presented computation model, forming the class of hereditarily sequential functionals, is based on a game in which each play describes the interaction between a functional and its arguments during a computation. This approach is influenced by the work of Kleene [Kle78], Gandy [Gan67], Kahn and Plotkin [KP78], Berry and Curien [BC82, Cur86, Cur92], and Cartwright and Felleisen [CF92]. We characterize the computable elements in this model in two different ways: (a) by recursiveness requirements for the game, and (b) as definability with the schemata (S1) (S8), (S11), which is related to definability in PCF. It turns out that both definitio...
Information Hiding, Anonymity and Privacy: A Modular Approach
 Journal of Computer Security
, 2002
"... We propose a new specification framework for information hiding properties such as anonymity and privacy. The framework is based on the concept of a function view, which is a concise representation of the attacker's partial knowledge about a function. We describe system behavior as a set of function ..."
Abstract

Cited by 38 (0 self)
 Add to MetaCart
We propose a new specification framework for information hiding properties such as anonymity and privacy. The framework is based on the concept of a function view, which is a concise representation of the attacker's partial knowledge about a function. We describe system behavior as a set of functions, and formalize different information hiding properties in terms of views of these functions. We present an extensive case study, in which we use the function view framework to systematically classify and rigorously define a rich domain of identityrelated properties, and to demonstrate that privacy and anonymity are independent.
Two semantic models of objectoriented languages
 Theoretical Aspects of ObjectOriented Programming. MIT
, 1994
"... We present and compare two models of objectoriented languages. The first we call the closure model because it uses closures to encapsulate side effects on objects, and accordingly makes the operations on an object a part of that object. It is shown that this denotational framework is adequate to ex ..."
Abstract

Cited by 35 (1 self)
 Add to MetaCart
We present and compare two models of objectoriented languages. The first we call the closure model because it uses closures to encapsulate side effects on objects, and accordingly makes the operations on an object a part of that object. It is shown that this denotational framework is adequate to explain classes, instantiation, and inheritance in the style of Simula as well as Smalltalk–80. The second we call the data structure model because it mimics the implementations of data structure languages like CLU in representing objects by records of instance variables, while keeping the operations on objects separate from the objects themselves. This yields a model which is very simple, at least superficially. Both the models are presented by way of a sequence of languages, culminating in a language with Smalltalk–80style inheritance. The mathematical relationship between them is then discussed and it is shown that the models give equivalent results. It will emerge from this discussion that more appropriate names for the two models might be the fixedpoint model and the selfapplication model. 1
SetSharing is Redundant for PairSharing
 Theoretical Computer Science
, 1997
"... . Although the usual goal of sharing analysis is to detect which pairs of variables share, the standard choice for sharing analysis is a domain that characterizes setsharing. In this paper, we question, apparently for the first time, whether this domain is overcomplex for pairsharing analysis. We ..."
Abstract

Cited by 27 (12 self)
 Add to MetaCart
. Although the usual goal of sharing analysis is to detect which pairs of variables share, the standard choice for sharing analysis is a domain that characterizes setsharing. In this paper, we question, apparently for the first time, whether this domain is overcomplex for pairsharing analysis. We show that the answer is yes. By defining an equivalence relation over the setsharing domain we obtain a simpler domain, reducing the complexity of the abstract unification procedure. We present preliminary experimental results, showing that, in practice, our domain compares favorably with the setsharing one over a wide range of benchmark programs. 1 Introduction In logic programming, a knowledge of sharing between variables is important for optimizations such as the exploitation of parallelism. Today, talking about sharing analysis for logic programs is almost the same as talking about the setsharing domain Sharing of Jacobs and Langen [11,12]. The adequacy of this domain is not norma...
A Theory of Recursive Domains with Applications to Concurrency
 In Proc. of LICS ’98
, 1997
"... Marcelo Fiore , Glynn Winskel (1) BRICS , University of Aarhus, Denmark (2) LFCS, University of Edinburgh, Scotland December 1997 Abstract We develop a 2categorical theory for recursively defined domains. ..."
Abstract

Cited by 23 (14 self)
 Add to MetaCart
Marcelo Fiore , Glynn Winskel (1) BRICS , University of Aarhus, Denmark (2) LFCS, University of Edinburgh, Scotland December 1997 Abstract We develop a 2categorical theory for recursively defined domains.
Algebraic Approaches to Nondeterminism  an Overview
 ACM Computing Surveys
, 1997
"... this paper was published as Walicki, M.A. and Meldal, S., 1995, Nondeterministic Operators in Algebraic Frameworks, Tehnical Report No. CSLTR95664, Stanford University ..."
Abstract

Cited by 23 (3 self)
 Add to MetaCart
this paper was published as Walicki, M.A. and Meldal, S., 1995, Nondeterministic Operators in Algebraic Frameworks, Tehnical Report No. CSLTR95664, Stanford University
Topological Incompleteness and Order Incompleteness of the Lambda Calculus
 ACM TRANSACTIONS ON COMPUTATIONAL LOGIC
, 2001
"... A model of the untyped lambda calculus induces a lambda theory, i.e., a congruence relation on λterms closed under ff and ficonversion. A semantics (= class of models) of the lambda calculus is incomplete if there exists a lambda theory which is not induced by any model in the semantics. In th ..."
Abstract

Cited by 23 (15 self)
 Add to MetaCart
A model of the untyped lambda calculus induces a lambda theory, i.e., a congruence relation on λterms closed under ff and ficonversion. A semantics (= class of models) of the lambda calculus is incomplete if there exists a lambda theory which is not induced by any model in the semantics. In this paper we introduce a new technique to prove the incompleteness of a wide range of lambda calculus semantics, including the strongly stable one, whose incompleteness had been conjectured by BastoneroGouy [6, 7] and by Berline [9]. The main results of the paper are a topological incompleteness theorem and an order incompleteness theorem. In the first one we show the incompleteness of the lambda calculus semantics given in terms of topological models whose topology satisfies a property of connectedness. In the second one we prove the incompleteness of the class of partially ordered models with finitely many connected components w.r.t. the Alexandroff topology. A further result of the paper is a proof of the completeness of the semantics of the lambda calculus given in terms of topological models whose topology is nontrivial and metrizable.
Not enough points is enough
 IN: COMPUTER SCIENCE LOGIC. VOLUME 4646 OF LECTURE NOTES IN COMPUTER SCIENCE
, 2007
"... Models of the untyped λcalculus may be defined either as applicative structures satisfying a bunch of first order axioms, known as “λmodels”, or as (structures arising from) any reflexive object in a cartesian closed category (ccc, for brevity). These notions are tightly linked in the sense that: ..."
Abstract

Cited by 19 (9 self)
 Add to MetaCart
Models of the untyped λcalculus may be defined either as applicative structures satisfying a bunch of first order axioms, known as “λmodels”, or as (structures arising from) any reflexive object in a cartesian closed category (ccc, for brevity). These notions are tightly linked in the sense that: given a λmodel A, one may define a ccc in which A (the carrier set) is a reflexive object; conversely, if U is a reflexive object in a ccc C, having enough points, then C ( , U) may be turned into a λmodel. It is well known that, if C does not have enough points, then the applicative structure C ( , U) is not a λmodel in general. This paper: (i) shows that this mismatch can be avoided by choosing appropriately the carrier set of the λmodel associated with U; (ii) provides an example of an extensional reflexive object D in a ccc without enough points: the Kleislicategory of the comonad “finite multisets ” on Rel; (iii) presents some algebraic properties of the λmodel associated with D by (i) which make it suitable for dealing with nondeterministic extensions of the untyped λcalculus.