Search papers, labs, and topics across Lattice.
This paper introduces the eXchange Calculus (XC), a typed lambda calculus extended with an exchange operator for implicit communication in distributed devices, as a foundational model for Aggregate Programming (AP). It presents FCPP, a C++ library implementation of XC, designed for programming the collective behavior of distributed devices at the network's far edge. The FCPP library has been used to write code deployed on rovers and UAVs, demonstrating its applicability in real-world, far-edge computing scenarios.
Forget cloud computing, FCPP lets you write typed lambda terms that actually fly on drones and drive rovers at the network's edge.
Aggregate Programming (AP) is a paradigm for programming the collective behaviour of sets of distributed devices, possibly situated at the network far edge, by relying on asynchronous proximity-based interactions. The eXchange Calculus (XC), a recently proposed foundational model for AP, is essentially a typed lambda calculus extended with an operator (the exchange operator) providing an implicit communication mechanism between neighbour devices. This paper provides a gentle introduction to XC and to its implementation as a C++ library, called FCPP. The FCPP library and toolchain has been mainly developed at the Department of Computer Science of the University of Turin, where Stefano Berardi spent most of his academic career conducting outstanding research about logical foundation of computer science and transmitting his passion for research to students and young researchers, often exploiting typed lambda calculi. An FCCP program is essentially a typed lambda term, and FCPP has been used to write code that has been deployed on devices at the far edge of the network, including rovers and (soon) Uncrewed Aerial Vehicles (UAVs); hence the title of the paper.