Rust for C Programmers

The C programming language has been a staple of embedded software development for 50 years. Many languages like Ada, C++, and others have attempted to usurp it, only to fail. Rust is a memory-safe systems programming language that has been gaining interest across a wide variety of industries. This workshop will introduce the Rust programming language for experienced C programmers.
The focus will be on highlighting the similarities and differences between the two languages, with an emphasis on showing how Rust can provide improved memory safety and performance without sacrificing the low-level control that C programmers are accustomed to. Attendees will learn the basics of Rust's syntax and standard library, as well as best practices for writing safe and efficient code in Rust. By the end of the workshop, participants will have a solid understanding of Rust and will be able to start using it in their own projects.
Example topics covered in this workshop include:
- Similarities and differences between C and Rust
- An introduction to the Rust toolchain
- Memory mapped I/O
- How to utilize peripheral access crate (PAC) and HAL crate
- Best practices for developing embedded applications in Rust
Examples and code walk throughs will use the STM32F3 Discovery board