Rust

From Wiki at Neela Nurseries
Revision as of 14:12, 25 January 2026 by Ted (talk | contribs) (Create sub-section q Specific development boards and Rust q)
Jump to navigation Jump to search

Notes on Rust programming language

Overview

This local page about the programming language of Rust aims to answer among other questions: How suitable is Rust for embedded development?

Rust By Example (RBE) home page here:

MIT mirror of Rust introduction by chapters:

^ Organizations for Rust

^ Installation and Other Specific Notes

Install Rust on Ubuntu:

Adoption and popularity of Rust:

2025-12-16

Rust crates

^ Rust for Embedded Systems

Rust language for embedded systems:

Rust crates for STM32:

^ Specific development boards and Rust

Charles Muchene is a software developer working in Rust and other languages. He shares an article on Medium dot com and a github project which presents a minimal start-up program in Rust for the Microbit V2:

^ Panic Handling

When setting panic compilation to 'abort' on panic, may be necessary to write one's own panic function:

How Rust panic is implemented . . . in crates core and std:

^ Questions to Answer

(1) For what is Rust language 'derive' keyword used?

  #[derive(Clone)]

  #[derive(Default)]

(2) How is the `.await` method working, and is this kind of element called a method in Rust?

(3) Rust `match` construct, is this equal to C switch statement?

(4) what does at or near top of source file `use defmt::*;` mean?

(5) Rust `impl` a keyword? Seeing this in lines like `impl CanTxChannel`.

(6) `.await.unwrap()` versus `.await`?

(7) What is the following forward arrow operator in this context?:

  pub async fn <function_name>(var declarations) -> () { ... }

(8) What mean the following top of file lines?:

#![no_std]
#![no_main]

^ References Rust and Embassy