Skip to content

lf-lang/lingua-franca

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0b0663a · Jan 20, 2025
Jan 20, 2025
Nov 25, 2022
Apr 15, 2024
Sep 8, 2023
Jun 3, 2024
Jun 3, 2024
Sep 13, 2023
Jan 20, 2025
Jun 3, 2024
Aug 19, 2024
Dec 31, 2024
Oct 1, 2024
Jun 1, 2023
Oct 31, 2024
Oct 30, 2023
Jun 4, 2024
Jan 26, 2024
Oct 22, 2024
Jun 27, 2023
Jan 25, 2024
Oct 31, 2024
Jun 3, 2024
Jul 6, 2023
Jun 16, 2023

Repository files navigation

Website | Documentation | Installation | Contributing | Changelog

CI (targets) CI (misc) CI (misc)

Open VSX Downloads Visual Studio Marketplace Downloads Nightly Build

CodeCov GitHub Contributors Zulip Twitter

The Lingua Franca Coordination Language

Lingua Franca (LF) is a polyglot coordination language for concurrent and possibly time-sensitive applications ranging from low-level embedded code to distributed cloud and edge applications. An LF program specifies the interactions between components called reactors. The emphasis of the framework is on ensuring deterministic interaction with explicit management of timing. The logic of each reactor is written in one of a suite of target languages (currently C, C++, Python, and TypeScript) and can integrate legacy code in those languages. A code generator synthesizes one or more programs in the target language, which are then compiled using standard toolchains. If the application has exploitable parallelism, then it executes transparently on multiple cores without compromising determinacy. A distributed application translates into multiple programs and scripts to launch those programs on distributed machines. The communication fabric connecting components is synthesized as part of the programs.

See lf-lang.org for installation instructions, documentation, and research papers. See also the wiki for further information on ongoing projects.