Objects and their lambda calculus (Q5941197)
From MaRDI portal
scientific article; zbMATH DE number 1635362
Language | Label | Description | Also known as |
---|---|---|---|
English | Objects and their lambda calculus |
scientific article; zbMATH DE number 1635362 |
Statements
Objects and their lambda calculus (English)
0 references
20 August 2001
0 references
A kind of parallel typed lambda calculus is presented based on the language and structure of objects. The term ``object'' is used here in a sense different from that related to the expression ``object-oriented language (programming)''. By ``objects'' here we mean any class of entities which (a) are resource dependent and (b) combine to each other (via some fitness relation) to form more complex ones. Two operators, \(\lambda\) and its dual \(\bar\lambda\), are used, and two operations, a binary one, \(\odot\), for juxtaposition, and an \(n\)-ary one, \(\mid,\) for every \(n,\) for branching. The construct \(\lambda v.x\) represents, roughly, a receiving scheme producing copies of \(x\) when fed with proper objects \(y\) to fill the empty place \(v\) of \(x,\) while the dual construct \(\bar\lambda y.z\) represents a sending scheme that throws \(y\) out \(z\) in proper surroundings. The interaction of these two constructs takes place when they are matched together by \(\odot\) and yields an exchange of resources in a way that preserves the total amount of them. The calculus captures such notions as concurrency, interaction and branching in a way analogous to that of \textit{G. Berrey} and \textit{G. Boudol} [Theoret. Comput. Sci. 96, 217-248 (1992; Zbl 0747.68013)]; \textit{G. Boudol} [Lect. Notes Comput. Sci. 351 149-161 (1989)], but with a quite different meaning of the operations. What is described here is ``situations'' of coexisting entities rather than computations, and resource-preserving transformations between them. The terms are shown to have unique normal forms. Object structures that model the simple theory of objects are extended here in suitable graph structures that provide sound and complete semantics of the calculus.
0 references
structure of objects
0 references
calculus
0 references
concurrency
0 references
branching
0 references