Should you Rust in embedded yet?
Embedded developer here, ARM Cortex-M4 microcontrollers. I&#x27;ve been keeping an eye on Rust for the embedded space and although there has been a lot of movement in that area--particularly in the last couple of months--I&#x27;m not sure the value proposition fits the microcontroller market, where of course C is king.<p>While Rust has much to offer as a programming paradigm in general, the main value is in the borrow-checker (the linked transcript cites &#x27;memory bugs&#x27; as the most common class of bugs). Embedded software practitioners long ago abandoned dynamic memory allocation and with it the &#x27;use-after-free&#x27; and &#x27;out-of-bounds access&#x27; bugs, instead re-defining the problem as one of latency (e.g. you&#x27;ll need to process that static buffer before it gets re-used by your UART interrupt). Take away the borrow-checker, and Rust looks less compelling.<p>In time, Rust will find its niche in the embedded space, most likely occupying the high-level RPi&#x2F;BBB&#x2F;iMX SoC layer and perhaps working its way down to microcontrollers. As wiremine points out, it will require vendor support--moving away from your vendor&#x27;s toolchain is a world of hurt that seasoned embedded developers just won&#x27;t even consider. Pragmatism reigns: time-to-market and a cheap BoM are the main metrics, programming language a distant 10th.