Next Newsletter - Content for the content gods
jacobrosenthal opened this issue · comments
Intermediate Embedded Rust Or How to make sure Embedded Rust works for you
The embedded rust matrix channel is the go to spot.
https://matrix.to/#/#rust-embedded:matrix.org
Make sure to join our weekly meetings on Matrix. We use these meetings as a faster, synchronous alternative to the RFC threads on GitHub. The agenda is posted in the issue tracker of this repository in advance to the meeting. Everyone is free to join the meeting and share their thoughts. You can also nominate an existing GH thread for discussion if you think it would benefit from a more synchronous discussion.
You probably already follow your favorite hal, but did you know threres even more active channels for different hals
samX https://matrix.to/#/#atsamd-rs:matrix.org
stm https://matrix.to/#/#stm32-rs:matrix.org
nrf https://matrix.to/#/#nrf-rs:matrix.org
and active projects?
https://matrix.to/#/#rust-embedded-graphics:matrix.org
https://matrix.to/#/#rtic:matrix.org
https://matrix.to/#/#probe-rs:matrix.org
If you've been keeping up so far, its time to dig deeper
The intrinsics for each architecture are at stdarch and you want to subscribe to that most likely and keep watch on your architecture
https://github.com/rust-lang/stdarch
https://github.com/rust-lang/compiler-builtins
Are your libc and libm working for you? Get involved!
https://github.com/rust-lang/libc
https://github.com/rust-lang/libm/
The low level embedded stuff
https://github.com/rust-embedded/bare-metal
https://github.com/rust-embedded/r0
your arch
https://github.com/rust-embedded/cortex-m
https://github.com/rust-embedded/cortex-a
https://github.com/rust-embedded/riscv
etc
your runtime for your arch
https://github.com/rust-embedded/riscv-rt
https://github.com/rust-embedded/cortex-m-rt
https://github.com/rust-embedded/msp430-rt
etc
Im skipping links for brevity, but putting a watch on your favorite stack is going to keep your code running and the ecosystem healthy
Watching rustlang repo is lot harder because of the volume.
If you do a lot of embedded work on a specific architecture you might want to bookmark that label and visit occasionally to see what bugs are being sorted in and solutions being proposed
just to name a few
https://github.com/rust-lang/rust/labels/O-ARM
https://github.com/rust-lang/rust/labels/O-AVR
https://github.com/rust-lang/rust/labels/O-riscv
Rust is designed and maintained through RFCs
"Some changes though are "substantial", and we ask that these be put through a bit of a design process and produce a consensus among the Rust community and the sub-teams.
The "RFC" (request for comments) process is intended to provide a consistent and controlled path for new features to enter the language and standard libraries, so that all stakeholders can be confident about the direction the language is evolving in."
PRE rfcs are posted on internals, setting up mailing list mode or a summary is a good idea to keep an eye on the future of rust
https://internals.rust-lang.org/
RFCs are PR'ed and discussed at https://github.com/rust-lang/rfcs, so watching for upcoming change ideas is a probably a good idea. Those will link to any implementation thats ongoing. Thers a rust custom tool called rfcbot that has a list of active rfcs under discussion otherwise. https://rfcbot.rs/
Going deeper yet:
The zulip is where the rust lang/compiler team meetings and discussions happen
https://rust-lang.zulipchat.com/
Thanks for the write-up @jacobrosenthal. However, this would need to be merged with the newsletter template.
Could you have a try at that and then send this as a PR? That would make the changes more concrete.