Add no-std & learning info

main
~erin 2023-04-17 21:23:53 -04:00
parent ee37604974
commit 1eacd4683d
Signed by untrusted user: erin
GPG Key ID: 9A8E308CEFA37A47
1 changed files with 12 additions and 0 deletions

View File

@ -32,3 +32,15 @@ All of the source code for **Mercury** is on a self-hosted [Gitea](https://git.l
Sign up there, and contact one of the maintainers to get access to the repositories. Sign up there, and contact one of the maintainers to get access to the repositories.
The source for this site, and our [website](https://mercury.the-system.eu.org) is available there as well. The source for this site, and our [website](https://mercury.the-system.eu.org) is available there as well.
### Design
All `crates`/`libraries` are in a `no-std` environment. This means we only have access to the [libcore](https://doc.rust-lang.org/core/) functionality.
However, we will be using the `alloc` crate to access the heap, and`collections` to have access to data structures like `Vec`.
## Learning
Before jumping in, I highly recommend learning some stuff abotu **Rust** and embedded developmend with it.
A thorough series of steps might be:
1. Read through the [Rust Book](https://doc.rust-lang.org/book/)
2. Work through the [Interactive Rust Book](https://rust-book.cs.brown.edu/)
3. Complete the [rustlings](https://github.com/rust-lang/rustlings) exercises
4. Take a quick look through the [Embedded Rust Book](https://docs.rust-embedded.org/book/intro/index.html)