Looking to learn Rust? Curious about Rust? Feel free to ask me
Hey!
I'm a professional software engineer with several years of experience using Rust. Unfortunately I don't really have the time to contribute to Lemmy directly myself, but I love teaching other people Rust so if:
You are curious about Rust and why you should even learn it
You are trying to learn Rust but maybe having a hard time
You are wondering where to start
You ran into some specific issue
... or anything to do with Rust really, then feel free to ask in the comments or shoot me a PM 🙂
I am an embedded C dev. I want to do embedded with rust just to learn, and be ready in case a client wants that for whatever reason (I just want to be hip).
Do you have any experience with embedded Rust in mcu? If so, how is the workflow?
Unfortunately embedded programming is not something I have first hand experience with, but I've read how it works.
The Rust standard library is actually split into 3 layers:
Core: This is core stuff built into the language. No dependencies needed. No memory allocation, no syscalls, no nothing basically. This defines the primitive types like i32 and str and pure functions on those.
Alloc: Provides heap memory allocation on top of core, giving access to types like Vec and String. Still no operating system so no file IO or anything like that.
Std: The full standard library that generally assumes the presence of an operating system with file systems and networking and all that jazz.
The language is obviously still the same even if not using the full standard library. Feel free to ask more specific stuff, though I'm not very familiar with embedded.
Since I am more interested in the embedded side of Rust (though I don't mind the software side of it), do you think I am better off starting directly with embedded Rust? Since the std lib is not available for embedded.
I think you should go for what interests you, that will be the best way to learn since you'll be motivated. If you mostly intend to do embedded anyway, learning anything else could just be a waste of time. I guess it'll just be easier since you won't have to learn the standard library :P