What's everyone working on this week (24/2016)?

New week, new Rust! What are you folks up to?

Continuing to contribute bugfixes and enhancements to Serde codegen as I have been for the past 2 months. The most exciting thing this week is Syntex support for derive attributes inside of cfg_attr.

#[cfg_attr(feature="serde", derive(Serialize, Deserialize))]

https://github.com/serde-rs/syntex/pull/71

1 Like

Taking a crack at adding serde support to nickel-rs which is the main reason I went with iron for a simple project recently.

I'm finding a lot of cases where crates that use rustc-serialize need both serde and serde_json, which means having a plain serde crate feature doesn't work. I've been calling the feature with-serde, but it'd good if there was some 'standard' I could use so users don't end up having a mix of serde, with_serde, with-serde, use_serde etc all through their cargo configs.

1 Like

We just released our iOS and Androids apps, both of which incorporate a common library written in Rust; we are now officially using Rust in production!
Next up - refactor build scripts to use rustup for cross compilation instead of using a self-built rust compiler & stdlib.

12 Likes

Wow, that's really exciting. I think this is the first I've heard of someone deploying Rust to a real Android or iOS app. I didn't realize Rust on iOS was even viable. I'd love to hear more details about your architecture, and the problems you hit. Maybe a blog post?

Yep, a blog post is on my todo list. I'll post a link to it on the forum when done.

Also on my todo list is the creation of a family of cargo crates that would make writing cross-platform mobile libraries in Rust, for consumption in natural Android and iOS apps, slightly less painful.

Alas, my todo list is so very long.

11 Likes

I am implementing ParallelStream on my future cargo crate asyncplify (Reactive Framework).

I am working on adding more features to miri (the rust-MIR interpreter that will give us insanely powerful constant evaluation). This week I'm writing a tool to allow gdb-style stepping through the MIR of a function + printing of values of locals.

5 Likes

I'm learning Rust and working on simple XLSX file reader.

2 Likes

Yet another operating system :stuck_out_tongue:

I might write a blog post about how I got UEFI working, if I get the time.

Im making a mod manager for KSP in Rust, as a learning project.

I'm working on a personal project - a computerized cuneiform sign list - in order to learn Rust. I'm not a CS person by discipline, and most of my previous programming experience is with MATLAB and FORTRAN, so it's been a bit of a bumpy ride. :stuck_out_tongue:

3 Likes

:arrow_forward: New Rustacean e015: Not dumb pointers — talking about smart pointers this week!

1 Like

Better late than never :).

This week I worked on a small search tool for dependency treebanks for doing some data analysis based on part-of-speech patterns. I use BurntSushi's suffix crate to construct suffix arrays for quick lookup of such patterns and keep parallel arrays for tokens, lemma's, dependency relations, etc.

Since the corpora are large, it's a bit annoying (time and memory-wise) to load the suffix arrays into memory every time. So, I contributed a small change to the suffix crate that makes the backing suffix array Cow as well. Now I can just mmap() the suffix and arrays using the memmap crate. Lookups are still extremely fast and the memory use is negligible.

I started to read "The Book" on Monday and I wrote my first Rust project during the week.
It's an API Bindings to the Open Source License API.
I will keep improving the code as my Rust will enhance. :slight_smile:

A little late on this one, but I'm continuing to work on my UI framework.
I just got the beginnings of layout and drawing working.

Drawing is done with WebRender.

Here's a screenshot. Right now I just draw a the bounding box of the UI element in a different color, but layout works :slight_smile:

2 Likes

What's the app?

Booktrack
link to website
link to iOS app
link to Android app

The mobile apps are "traditional" Java/ObjC apps that utilise a common core library written in Rust. At present, this core library is relegated to a few key tasks mostly around the processing of ePubs.

Given my experience thus far with Rust (the language, library, ecosystem and community) I fully intend to increase the ratio of Rust to Java/ObjC.

4 Likes

Beginner Rust programmer here.

Just made a simple FFI for https://github.com/bjz/noise-rs

1 Like

Learning Rust, and very excited about. I'm a developer since 1994 and Rust syntax and features is really cool.