Lingua Franca:
An Open-Source Coordination Language for Deterministic Integration of Cyber-Physical Systems
Half-day hands-on tutorial (~4 hours)
Abstract
This half-day, hands-on, interactive tutorial introduces Lingua Franca (LF), an open-source coordination language designed for building deterministic, concurrent, and time-sensitive cyber-physical systems. Participants will explore LF's core concepts through a technical overview, CPS-focused demonstrations, and hands-on programming sessions using C and Python as well as the LF coordination language.
This tutorial emphasizes how LF enables deterministic concurrency, simplifies integration, and enhances reliability across CPS and IoT domains. The tutorial is intended for researchers, engineers, and graduate students with programming experience interested in robust CPS design.
π― Target Audience
CPS-IoT Week participants including academic researchers, industry engineers, and graduate students working on CPS/IoT. No prior experience with LF is requiredβbasic proficiency in C and/or Python is recommended.
π‘ Motivation & Relevance
Cyber-physical systems (CPS) and IoT applications often involve multiple concurrent components interacting under real-time constraints. Ensuring deterministic behavior and coordinated timing across these components is a notorious challenge with conventional programming approaches (threads, pub/sub, actor frameworks, etc.).
Lingua Franca is a polyglot coordination language designed to address this challenge by offering a framework for building concurrent, time-sensitive systems that behave deterministically and predictably. An LF program defines interactions between reactive components called reactors and emphasizes deterministic coordination with explicit handling of timing.
By using LF, CPS developers can coordinate sensing, computation, and actuation across devices with guarantees of logical timing order and thread-safe determinism that are difficult to achieve with traditional methods.
Key Benefits
- Deterministic Concurrency: Race-free execution on multiple cores or devices without special synchronization code
- Explicit Timing Semantics: Specify and maintain precise temporal behavior without ad-hoc timing code
- Polyglot Support: Reactor logic can be written in C, Python, C++, Rust, or TypeScript
- Distributed Execution: Built-in support for federated execution across networked devices
π Tutorial Schedule
Total duration: ~4 hours (half-day tutorial including breaks)
Introductory Presentations
45 minutesIntroduction to CPS concurrency challenges and motivation for Lingua Franca. Explanation of the reactor-oriented programming model and key language concepts (reactors, ports, timers, logical time). Real-world scenarios in automotive and avionic systems where deterministic coordination is vital.
Led by: Organizers
Live Demos
45 minutesCPS-focused example applications built with LF, including distributed (federated) execution, physics simulation integration, and embodied AI agents using robotic platforms. Demos will leverage example programs from the LF Playground and LF Demos repositories such as the vehicle simulation integrated with the physics-based simulation engine, MuJoCo.
Led by: Organizers
Break
10 minutesHands-on Programming Sessions
100 minutesInteractive coding sessions with progressively challenging exercises using CPS-themed examples. Build a smart traffic light controller, implement distributed sensing applications, and explore the LF Playground. Choose between C or Python for reactor logic implementation.
Led by: Organizers & Teaching Assistants
Break
10 minutesWrap-Up and Q&A
30 minutesSummary of key takeaways, discussion of advanced LF capabilities (federated distributed execution, modal models), project roadmap, and community involvement opportunities.
Led by: Organizers
π What You'll Learn
Concepts
- Reactor-oriented programming model
- Reactors, ports, and connections
- Timers and logical time
- Deterministic concurrency
- Federated (distributed) execution
Hands-on Skills
- Writing LF programs with C or Python
- Building CPS applications (e.g., traffic controller)
- Implementing distributed sensing
- Using VS Code with LF extension
- Working with the LF Playground
π» Technical Requirements & Setup
Participants should bring a laptop for the hands-on sessions. Lingua Franca's toolchain supports Linux, macOS, and Windows (via WSL).
Setup Options
- Pre-configured VM: We will provide an Ubuntu virtual machine image with all required tools installed (LF compiler, VS Code with LF extension, Java, C compiler, etc.)
- Native Installation: One-line install script or VS Code extension installation
- Cloud-based: GitHub Codespaces or Gitpod for the LF Playground as a browser-based backup environment
Dependencies
- Java 17+ JDK
- C/C++ compiler (gcc or clang)
- CMake
- Python (for Python target)
π₯ Organizers

Hokeun Kim
Arizona State University, USA
Assistant professor of Computer Science and Engineering in the School of Computing and Augmented Intelligence (SCAI) at Arizona State University. Ph.D. in EECS from UC Berkeley (2017) with a focus on distributed cyber-physical systems and IoT security. Research interests include cyber-physical systems, distributed systems, real-time systems, computer security, and computer architecture. Recipient of ACM/IEEE Best Paper Award at CPSWeek, IEEE Micro Top Picks Honorable Mention, and 1st Place in ESSC at ESWEEK.
π§ hokeun@asu.edu

Chadlia Jerad
University of Manouba, Tunisia
Associate professor at the National School of Computer Science (ENSI), University of Manouba, Tunisia. Fulbright Visiting Scholar at EECS, UC Berkeley in 2016-2017 (Accessors project) and 2022-2023 (Lingua Franca project). Recognized by DAAD Tunisia as 'Portrait of the Month' in 2018. Research interests include embedded and cyber-physical systems, distributed and real-time systems, computer architecture, and formal verification.

Edward A. Lee
University of California, Berkeley, USA
Professor of the Graduate School and Distinguished Professor Emeritus in EECS at UC Berkeley. Author of seven books and hundreds of papers. Director of iCyPhy, the Berkeley Industrial Cyber-Physical Systems Research Center. Fellow of the IEEE, NSF Presidential Young Investigator. Awards include the 2016 IEEE TCRTS Outstanding Technical Achievement and Leadership Award, 2019 IEEE TCCPS Technical Achievement Award, 2022 EDAA Achievement Award, 2022 ACM SIGBED Technical Achievement Award, and Honorary Doctorate from the Technical University of Vienna (2022).
π§ eal@berkeley.edu
π Materials & Resources
This webpage serves as the central hub for all tutorial materials. Participants can expect to find:
- Setup instructions and prerequisites
- Slide decks and presentation materials
- Hands-on exercise instructions and starter code
- Links to example projects and the LF Playground
- Video recordings of presentations and demos (after the event)
Materials will be updated as we approach the tutorial date. Check back regularly for the latest resources.
Community Support
Join the Lingua Franca Zulip community (50+ active members, 200+ total) for Q&A before and after the tutorial. This connects you with an active open-source community spanning multiple institutions for continued learning and support.
Related Resources
Get started with Lingua Franca and learn more about the conference.