What’s everyone working on this week (45/2015)?


#1

The new week’s just begun. What are you folks up to?


#2

I’ll be at Øredev! Giving two talks, one of which is on Rust.

I’m going to continue with https://github.com/rust-lang/rust/issues/29429, probably tackling the last bits of iter and the prelude, maybe char if that gets done quickly.

I am hoping to mkae more progress on the secret project. Hopefully you’ll all see soon!


#3

Friendly bindings for notmuch. I’m not going to link to it because it’s not nearly done (and needs a few changes in notmuch itself).


#4

Working on cloud OS using rust.


#5

Ha. that’s interesting. My first Rust project (back with rust 0.8) were bindings to notmuch and the attempt to write a console interface on top of it.

https://github.com/skade/bisschen (it’s so old that I wouldn’t bother to look at it for inspiration).

What changes in notmuch does it require?


#6

The ownership model (parents own children) is painful and makes encapsulation difficult. Basically, I want users to be able to write something like:

fn first_new_message<'a>(database: &'a Database) -> Result<Option<Message<'a>>, Error> {
    database.query("tag:new").search_messages().map(|ms|ms.next())
}

Unfortunately, in the current system, the query owns it messages so I have to keep it around to keep the single message I’m looking for. I’m modifying notmuch to provide functions for reparenting ownership of objects onto the database itself.


#7

Now that you say it, I remember. That was really odd.


#8

I just replaced my original implementation of iso8601 date string parsing in http://crates.io/crates/datetime with the much faster http://crates.io/crates/iso8601 and lived to blog about it :smiley:


#9

Have been writing about my process learning Rust with a project called Learn Rust by Needlessly Implementing GNU coreutils.

The text aims to be the thing you read after or alongside the Book. It’s lots of small, easily understood projects that can enable you to explore lots of Rust’s features.