jnode
heapless
Our great sponsors
jnode | heapless | |
---|---|---|
2 | 4 | |
317 | 1,387 | |
-0.9% | 2.9% | |
0.0 | 8.7 | |
over 2 years ago | 23 days ago | |
Java | Rust | |
- | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jnode
-
Dynamic, JIT-compiled language for systems programming?
Source code here: https://github.com/jnode/jnode
-
Rust: A Critical Retrospective
Go has been used to implement OS kernel code,
but it's an interesting piece of software.
Agreed. And I didn't mean to imply that it's impossible to use Go that way, but I think it's fair to say that it's less common and perhaps even less desirable to do that.
OTOH, people have written (at least parts of) Operating Systems in Java[1] even, so never say never...
[1]: https://github.com/jnode/jnode
heapless
- """may_dangle""" stabilization
-
Rust: A Critical Retrospective
> we did not have Vec because we were no-std + stable so we literally had to use arrays
It's true that Vec isn't available in a no-std context, but don't think it follows that arrays are the only other option - see heapless for one example: https://github.com/japaric/heapless
I also agree with some of the ancestors: the post seems to say that the Rust language couldn't handle arrays with more than 32 elements, and (as someone who's written a fair bit of no-std Rust before const generic) that doesn't seem right. At first, this did seem awkward to me as well, but in practice I haven't found it to be a significant limitation. Was there a particular scenario where it wasn't feasible to wrap a >32 element array in your own type and implement Default on it?
-
Now that the long-awaited const generics (MVP) have come to stable in 1.51, what crates are going to gain the most from it?
It's happening
-
Writing a proposal to use Rust at work
heapless has both SPSC and MPMC channels that work on embedded
What are some alternatives?
rust - Empowering everyone to build reliable and efficient software.
tinyvec - Just, really the littlest Vec you could need. So smol.
biscuit - Biscuit research OS
blisp - A statically typed Lisp like scripting programming language for Rust.
snapbox - Snapshot testing for CLIs
scapegoat - Safe, fallible, embedded-friendly ordered set/map via a scapegoat tree. Validated against BTreeSet/BTreeMap.
KEEP - Kotlin Evolution and Enhancement Process
utils - Utility crates used in RustCrypto
regex-automata - A low level regular expression library that uses deterministic finite automata.
clap-rs - A full featured, fast Command Line Argument Parser for Rust
cassette - A simple, single-future, non-blocking executor intended for building state machines. Designed to be no-std and embedded friendly.