What is it about?
Lingua Franca is the name for a programming language that allows software designers to define components (called "reactors") that can execute in parallel on multicore machines or on distributed computers. The functionality of each reactor is given in a "target language," a pre-existing and familiar programming language. Currently, Lingua Franca supports C, C++, Python, and TypeScript (a dialect of JavaScript) as target languages. The language includes constructs for controlling the timing of execution of programs, including both periodic and sporadic behavior, and the specification of deadlines. The language is being developed collaboratively by an international team and is fully open source.
Featured Image
Photo by Jon Tyson on Unsplash
Why is it important?
Concurrent software, where multiple interacting programs run at the same time, is notoriously difficult to design and often exhibits unpredictable behavior. Lingua Franca makes it much easier to reason about the behavior of such programs to get predictable and controllable interaction between the various software components.
Perspectives
Read the Original
This page is a summary of: Toward a Lingua Franca for Deterministic Concurrent Systems, ACM Transactions on Embedded Computing Systems, July 2021, ACM (Association for Computing Machinery),
DOI: 10.1145/3448128.
You can read the full text:
Contributors
The following have contributed to this page