New week, new Rust! What are you folks up to?
I'm working on a project at university that involves using a library called Gurobi to solve large network flow optimization problems, and I use the
jlrs crate to access the excellent bindings that Julia have for Gurobi.
I'm working on
v0.2.0 of zoxide, a replacement for the
cd command that tracks your most used directories and lets you jump between them just by using their names / part of their names. Here's my current TODO list:
migrate errors from
migrate argument parsing from
migrate environment variable parsing to
add an init command for different shells:
z command should go to
.zo file from home directory to cache directory
I've started a bunch of optimization PRs for generators and async/await over the weekend, so I plan on finishing them up and maybe get some of them landed in rustc proper.
Other than that, I've also been working on bringing up the USB peripheral of the nRF52840 microcontroller, so if I find the time I might hack on that (it seems like it's not able to send data to the host at the moment).
I'm slowly progressing through writing bindings for Dart's native extensions api.
I'm planning on doing it in three steps:
- Raw Bindings: https://github.com/OptimisticPeach/dart-sys
- Safe Wrapper: To be released with...
- Idiomatic bindings: WIP.
I intend on getting the safe wrapper UB free, without sacrificing much in the way of being a wrapper, and am re-reading the nomicon to not possibly forget anything.
The idiomatic bindings will aim at providing anything both the rust type (Ex.
String) provides and the type (Ex.
I am currently working on a graph-based language database, which should learn correct grammar of natural languages by reading correct texts. I am using the petgraph crate to store a directed graph of words.
The graph stores the words as its nodes and stores the possible distances between words in the directed edges. Also each nodes stores an adjacency matrix to map incoming edges to allowed outgoing edges, so that each word can be combined with other words and together they give the allowed words to fill in free variables or continuations of sentences.
Later I want to use this kind of database to as a natural language grammar and use it to define semantics on words and combinations of words. Ultimately this is supposed to fit in a project planner, where natural language can be used to define goals and procedures. I hope that I can get it working conveniently enough so that people could collaborate on projects of any kind and with more idealized information and better communication.
I'm adding author pages to lib.rs:
I‘m working on my Ruspiro Brain crate. This will be the center of my bare-metal OS for Raspberry Pi. After successfully adopting the Futures/Async pattern for this (where my brain is the executed running simultaneously on 4 cores of the Pi and the futures are Thinkables the brain can think on to come to a conclusion) it‘s time to make building things around the brain more convenient to implement, so I’m into proc_macros to generate the most of the required code so that the code I need to write is more looking like the Async/await pattern we are now used to in Async Rust
Still working on Von Neumann Defense Force. The focus last week was on routine maintenance and cleanups. While I'd like to do something more interesting (like improving the numerical integration method used for the core physics), I just keep running into various messes that I need/want to clean up first.
Context: am student, have lots of free time. I've been working through various Rust tutorials, and using Project Euler as a problem archive to challenge myself and discover areas of knowledge I could stand to build on. This week, I'll probably continue that, and I'd like to learn to write macros and do a bit of parallel programming practice. Eventually, I'd like to find some open source project to contribute to to continue to build my knowledge.
Implementing Navbar styles in yew-styles (framework styles for yew)
I did release my first crate and slowly trying to improve it: https://github.com/lmammino/jwtinfo/
So far it has been a great excuse to keep learning Rust!
Any feedback is most welcome!