Plain CHOCS. A second generation calculus for higher order processes (Q1323361)

From MaRDI portal
Revision as of 12:20, 31 January 2024 by Import240129110113 (talk | contribs) (Added link to MaRDI item.)
scientific article
Language Label Description Also known as
English
Plain CHOCS. A second generation calculus for higher order processes
scientific article

    Statements

    Plain CHOCS. A second generation calculus for higher order processes (English)
    0 references
    0 references
    1993
    0 references
    We present a calculus of communicating systems which allows one to express sending and receiving processes. We call this calculus Plain CHOCS. The calculus is a refinement of our earlier work on the calculus of higher order communicating systems (CHOCS). Essential to the new calculus is the treatment of restriction as a static binding operator on port names. The new calculus is given an operational semantics using labelled transition systems which combines ideas from the applicative transition systems described by Abramsky and the transition systems used for CHOCS. The new calculus enjoys algebraic properties which are similar to those of CHOCS only needing obvious extra laws for the static nature of the restriction operator. Processes as first class objects enable description of networks with changing interconnection structure, and there is a close connection between the Plain CHOCS calculus and the \(\pi\)-calculus described by Milner, Parrow and Walker: the two calculi can simulate one another. Recently object oriented programming has grown into a major discipline in computational practice as well as in computer science. From a theoretical point of view object oriented programming presents a challenge to any metalanguage since most object oriented languages have no formal semantics. We show how Plain CHOCS may be used to give a semantics to a protoype object oriented language called \(O\).
    0 references
    semantics of object oriented language
    0 references
    calculus of communicating systems
    0 references
    operational semantics
    0 references
    labelled transition systems
    0 references
    object oriented programming
    0 references

    Identifiers

    0 references
    0 references
    0 references
    0 references
    0 references
    0 references