AdaCore Join Rust Enthusiasts in Paris
by Jose Ruiz –
On June 25th, I attended the Rust Paris 2024 conference. Among around one hundred Rust enthusiasts and a program filled with captivating subjects and contributors, I presented (together with Thales) our vision for establishing a Rust ecosystem for certifiable embedded critical systems.
A dedicated community
The community impressed me the most. I engaged with many dedicated and active members who emphasized that, beyond its technical merits, Rust’s positive and supportive community is one of its greatest strengths.
As someone particularly interested in embedded safety-critical systems, I took the opportunity to exchange ideas with attendees working in that field. They are optimistic about gradually transitioning from unsafe languages (like C) to memory-safe programming languages (like Rust) to improve reliability. They foresee starting the migration of simpler components to Rust, initially relying on a restricted and straightforward Rust runtime.
Presenting with Thales
In my presentation, I emphasized that even when using a limited language subset, the reliability and stability of the language, runtime, and tools are critical success factors for safety-critical projects. These projects need to stay on a fixed version of the development and verification environment, with continuous long-term support to promptly address issues encountered during development, deployment, and maintenance.
Another crucial topic is the chosen execution platform. While the Rust community predominantly focuses on mainstream applications, safety-critical platforms such as Real-Time Operating Systems (RTOSs) and bare-metal targets present distinctive challenges. AdaCore is working on seamless integration and optimization of language constructs for these specialized platforms.
We also discussed the need for qualification and certification of development and verification tools. This requires specialized knowledge to provide timely and comprehensive evidence of compliance for the compilation toolchain, embedded runtimes and libraries, and verification tools like coding standard checkers or code coverage tools.
I felt particularly proud when discussing our collaborative efforts with the Rust community to support structural coverage analysis for Rust. This is based on instrumenting the LLVM Intermediate Representation (IR) to dump execution traces, bringing this fundamental verification metric to the Rust ecosystem.
I eagerly anticipate my next opportunity to engage with such an interesting crowd, which will be at the High Integrity Software Conference (HISC) 2024 on October 22nd.