Results 1 -
5 of
5
A Functional Theory of Local Names
, 1994
"... ## is an extension of the #-calculus with a binding construct for local names. The extension has properties analogous to classical #-calculus and preserves all observational equivalences of #. It is useful as a basis for modeling wide-spectrum languages that build on a functional core. 1 Introducti ..."
Abstract
-
Cited by 27 (2 self)
- Add to MetaCart
## is an extension of the #-calculus with a binding construct for local names. The extension has properties analogous to classical #-calculus and preserves all observational equivalences of #. It is useful as a basis for modeling wide-spectrum languages that build on a functional core. 1 Introduction Recentyears have given us a good deal of theoretical research on the interaction of imperative programming #exempli#ed byvariable assignment# and functional programming #exempli#ed by higher order functions# #3,6,19,21, 24#. The common method of all these works is to propose a #-calculus extended with imperative features and to carry out an exploration of the operational semantics of the new calculus. Based on our own experience in devising such an extended #- calculus #13#, the presentwork singles out the name, whose only observational property is its identity, as an essential componentofany such extension. We present a simple extension of the pure #-calculus with names; we showby ex...
Label-Selective Lambda-Calculus Syntax and Confluence
, 1995
"... . We introduce an extension of -calculus, called label-selective - calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
. We introduce an extension of -calculus, called label-selective - calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in order to preserve currying. This extension of -calculus is conservative in the sense that when the set of labels is the singleton f1g, it coincides with -calculus. The main result of this paper is that the label-selective -calculus is confluent. In other words, argument selection and reduction commute. Keywords. -Calculus, record calculus, concurrency, communication. 1 Synopsis Many modern programming languages allow specifying arguments of functions and procedures by symbolic keywords as well as using the traditional and natural numeric positions [16, 12, 4]. Symbolic keywords are usually handled as syntactic sugar and "compiled away" as numeric positions. This is made easy if the langua...
Lambda and pi calculi, CAM and SECD machines
, 2001
"... We analyse machines that implement the call-by-value reduction strategy of the λ-calculus: two environment machines—CAM and SECD—and two encodings into the π-calculus—due to Milner and Vasconcelos. To establish the relation between the various machines, we setup a notion of reduction machine and two ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
We analyse machines that implement the call-by-value reduction strategy of the λ-calculus: two environment machines—CAM and SECD—and two encodings into the π-calculus—due to Milner and Vasconcelos. To establish the relation between the various machines, we setup a notion of reduction machine and two notions of correspondences: operational—in which a reduction step in the source machine is mimicked by a sequence of steps in the target machine—and convergent—where only reduction to normal form is simulated. We show that there are operational correspondences from the λ-calculus into CAM, and from CAM and from SECD into the π-calculus. Plotkin completes the picture by showing that there is a convergent correspondence from the λ-calculus into SECD. 1
Label-Selective ...-Calculus
"... We introduce an extension of -calculus, called label-selective -calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in ord ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We introduce an extension of -calculus, called label-selective -calculus, in which arguments of functions are selected by labels. The set of labels includes numeric positions as well as symbolic keywords. While the latter enjoy free commutation, the former must comply with relative precedence in order to preserve currying. This extension of -calculus is conservative in the sense that when the set of labels is the singleton f1g, it coincides with -calculus. The main result of this paper is the proof that the label-selective -calculus is confluent. In other words, argument selection and reduction commute. R esum e Nous presentons une extension du -calcul, appelee -calcul label-selectif, dans laquelle les arguments des fonctions sont selectionnes par des etiquettes. L'ensemble des etiquettes comprend des positions numeriques aussi bien que des mot-clefs symboliques. Alors que ces derniers jouissent d'une commutativite libre, les premiers obeissent a une precedence relative pour preserver...
The call-by-value lambda-calculus, the SECD machine, and the pi-calculus
, 2000
"... We present an encoding of the call-by-value lambda-calculus into the pi-calculus, alternative to the well-known Milner's encodings. We show that our encoding is barbed congruent (under typed contexts) to Milner's "light" encoding, and that it takes two pi-steps to mimic a beta-reduction for normaliz ..."
Abstract
- Add to MetaCart
We present an encoding of the call-by-value lambda-calculus into the pi-calculus, alternative to the well-known Milner's encodings. We show that our encoding is barbed congruent (under typed contexts) to Milner's "light" encoding, and that it takes two pi-steps to mimic a beta-reduction for normalizing terms. We describe a translation of Plotkin's SECD machine into the pi-calculus, and show that there is an operational correspondence between a SECD machine and its encoding. Equipped with a notion of state-based machine and two kinds of correspondences between them, we compare the encodings of the call-by-value lambdacalculus and the SECD machine into the pi-calculus. Contents 1 Introduction 2 2 The correspondences 4 2.1 Machines and correspondences . . . . . . . . . . . . . . . . . . . 4 2.2 Some properties of convergences . . . . . . . . . . . . . . . . . . 5 2.3 Summary of the correspondences . . . . . . . . . . . . . . . . . . 6 3 The call-by-value #-calculus 8 4 The SECD machin...

