New week, new Rust! What are you folks up to?
Still ticking through my PR for supporting async gzip decoding in
reqwest. Turns out http is hard I’ve got all the ducks in
elastic lined up for when that becomes available to get a new release out the door.
I really want to find some time to work on
cargo-nuget again, flesh out the cross-platform story and make sure everything works with the
dotnet SDK 2.0.
More holiday cleanup in my procfs sampling experiment.
For performance reasons, I use a custom variant of the Lines + SplitWhitespace combo that is more closely tailored to my use cases (ASCII input, known separator characters…). This week, I managed to greatly improve the ergonomics of this custom iteration mechanism and to bring the interface closer to standard Rust iterators. The only non-standard interface bit that remains is that I use a streaming design for iterating over lines, as it saves me from the cost of parsing each line twice.
I also got rid of some longstanding code duplication using macros. They were not a very good fit for this task though: what I was really after were non-type generic parameters, which are not in Rust yet
I’m slowly growing attached to the pattern of passing a closure to a struct method which generates input, calls the closure with this input, and returns the result of the closure as output. It is a very powerful way to handle temporary lifetime issues while keeping code reasonably abstract.
Aside from this, I’m moving further with diskstats interfacing, and encountering a problem which I’ve already solved before. Still figuring out whether there is a nice way to generalize the old solution in order to reuse it. Basically, it’s about efficiently storing sequences of zeroes without knowing in advance whether I’m dealing with one (or with a “regular” sequence of increasing numbers that happens to start with a string of zeroes), and the difficulty in building a common abstraction lies in the fact that these zeroes may be parsed in very different ways and turned into data of very different types.
Still a lot of enjoying the summer. A tiny bit of work on
uom (type-safe zero-cost dimensional analysis) to convert from supporting just
f64 as the underlying storage type to using the
num crate. Changes in the
After shipping Gotham this past weekend I’m taking a break from the feature/bugfix grind for a week or so.
Instead, I’m writing a blog post that walks you through recreating the Gotham example app starting at
cargo new and going from there.
I’m working on a json API using Rocket and Diesel. It’s my first project in Rust so the progress is slow but it’s interesting for sure.
I’m debating “rewriting it in Rust” for my embedded, WiFi controlled wearable Neopixels…
On the one hand, I’m switching the control protocol from midi to DMX/E1.31 anyway, so significant changes are going to be made regardless. On the other hand Neopixels have only a very rudimentary example running ( japaric), but that uses pwm pins, whereas my existing hardware is tied to bitbanging digital pins…
So many pros and cons to balance!
This probably takes many weeks to finish (the task), but let’s get started …
Since it’s weekend now I’m working on creating a basic shader playground/framework with Glium and Imgui for a shader workshop i’m holding at a conference in September. Other than that i’ve spent the week extending our company internal tools for finite element analysis with Rust and working with the FFI is a pleasure i miss in a lot of other languages
Hi everyone, It’s almost 6th month that I’m working on Vulkust more seriously, since then, the project have seen lots of changes and rethinking, right now project is reaching to a good point.