![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://programming.dev/pictrs/image/8140dda6-9512-4297-ac17-d303638c90a6.png)
10·
10 months agoRust actually has a shockingly good embedded story for some parts. ST-micro is very well covered. Espressif has first party support. Nordic parts are supported by Ferrous Systems who certify rust for ISO 26262 use. Msp430 is workable, but requires a fair bit of knowledge. The story is less good for anything else that’s not a Cortex part. RiscV is definitely getting there though.
https://doc.rust-lang.org/stable/embedded-book/
Ferrous systems knurling is actually a pretty incredible set of tools. I’d argue that they’re a better experience than most command-line c environments.
https://github.com/knurling-rs
They also have some pretty good walkthroughs for the Nordic and Espressif parts.
Java is not a bad object oriented language, and add lots of folks have pointed out here there are plenty of cool new things coming to the language. Lots of folks get a bad taste in school, and there’s a lot of bad Java code out there, but modern Java is a fine language. It’s powerful, can be surprisingly efficient and it’s widely supported. That said, even good Java has some downsides. The best practices are pretty boiler plate heavy. The oop structure the language is built on is going out of fashion in many domains for good reasons. Personally I find it always feels dated. While modern Java has added features that bring it up to par with other languages, it doesn’t feel as cohesive or well structured in as newer languages that either made better choices initially, or make breaking changes to correct issues with correctness, ergonomics, and maintenance.