Lingua Franca es un lenguaje de coordinación diseñado para desarrollar sistemas deterministas, concurrencia multihilos, sensibles al tiempo y distribuidos. Su objetivo principal es eliminar las complejidades inherentes a la gestión de hilos, la sincronización manual y las condiciones de carrera, ofreciendo un comportamiento más predecible que los frameworks tradicionales como los actores o las arquitecturas orientadas a servicios. El lenguaje incorpora semántica de tiempo integrada en su núcleo, permitiendo a los desarrolladores manejar tareas críticas con precisión sin la lógica de temporización compleja habitual en la programación concurrencia. Además, facilita la transición desde arquitecturas monohilo a distribuidas con modificaciones mínimas, abstraendo las complejidades de la red. Lingua Franca se distingue como el primer lenguaje de coordinación orientado a reactores, que permite especificar componentes reactivos y componerlos de manera intuitiva. Al eliminar las condiciones de carrera por construcción y definir claramente el concepto de 'al mismo tiempo', garantiza la equidad en escenarios críticos, como la revelación simultánea de elecciones en juegos de estrategia. A diferencia de un nuevo lenguaje de programación, Lingua Franca no reemplaza las librerías de hilos ni los middlewares de mensajería; en su lugar, los cuerpos de código reactivos se escriben en el lenguaje de programación preferido del desarrollador. Actualmente, el proyecto soporta C, C++, Python, TypeScript y Rust. Desarrollado inicialmente en la Universidad de California en Berkeley, Lingua Franca ha sido enriquecido por décadas de investigación en modelos de computación, con contribuciones de universidades como Kiel, TU Dresden, UT Dallas, NTNU, Hanyang y ASU, que han mejorado la síntesis de diagramas, la implementación de tiempo de ejecución y las optimizaciones del compilador.
