What's everyone working on this week? (Week 42, 2015)

Preparing my workshop and talk for Codemotion Berlin: Women Who Code Workshop: # Introduction to Rust | Codemotion Berlin 2015

It's organized and hosted by WomenWhoCode, but open to everyone.

I will probably implement a mailbox with concurrent access for show. :slight_smile:

I have:

  • Committed to that secret project I mentioned a while back. Maybe you'll see it next week :smile:
  • Keep going through the stdlib's module docs and improving them.
  • Go to Colombia to present at a conference
  • Go from Colombia back to NYC for 12 hours, then go to North Carolina for another conference, though that's technically early next week, I guess...

This week I will try to implement a Rust version of the Plugin API for my debugger project https://github.com/emoon/ProDBG

The API is based on C with structs including function pointers are getting sent to each plugin so targeting Rust should hopefully be fairly straightforward. Once that is done I plan to implement the Amiga UAE backend using Rust as a test to see how everything works out.

This is also the next step for me to write some larger code in Rust.

And if that turns out well I will likely start rewriting the whole thing in Rust (currently mostly C++)

1 Like

Nothing too impressive, but just made and am working out the kinks in a binding crate to espeak's library.
Very usable, except I'm having trouble getting TextToPhonemes in particular to work, I guess something to do with the double pointers.

I hope someday to make a safe, high-level crate upon it to help Rust users painlessly integrate text-to-speech into their programs.

  • I started experimenting with a Rust program to talk to the SAM-BA bootloader used in Atmel's ARM-based microcontrollers.
  • Probably mostly bug fixes and infrastructure work for VNDF this week.

Preparing for (and should be recording) New Rustacean e003. I plan to tackle enums and the basics of pattern matching, and then to use that as a way to talk about returning from functions which might fail or have non-data results (so: Option and Result). Should be out either over the weekend or early on Monday.

1 Like

Pumpkin! It's a prime number generator library intended to be used in other cryptographic programs where large primes are needed (such as RSA). It's not quite done yet, but I should be pushing something up to crates.io tonight or tomorrow.

Awesome to see another scener taking the leap :smiley: I've been working on porting all of my emulator stuff to Rust, as well as the SNES tracker I've been talking about for ages. Would love to hear more about your experience as well!

Projects are here:

https://github.com/emu-rs/emu

1 Like

A couple of us have been busy fixing up the coreaudio-rs crate, improving the public API as well as making the rendering callbacks safer :slight_smile:

3 Likes

Great to hear that. I like Rust quite a bit so far but it's slow to get fast as I stumble upon things all the time (how syntax should be etc)

I've definitely had the same experience. I still do when it comes to arrays/slices etc and ofc general lack of familiarity with the standard lib, but the rest of the language has definitely started to click for me. I think it's probably harder for C/C++ guys to learn because we have to understand what everything does before we trust the system actually is safe. "Unlearning fear" is a term I heard in a talk the other day, and I think it's super true :smile:

1 Like

I can totally agree with that :slight_smile:

I'm working on a cargo command that generates README.md from your crate's doc string

3 Likes

Cool project!

Be sure to include the

  • project name
  • git repo
  • docs link
  • crate version
  • travis badge (if the project has a .travis.yml, as many do)

Also do you have a public repo? If so you may want to add it to your comment – perhaps others want to join in.

I forgot that 'little details'.

The project is called cargo-readme.

I started it because I found myself copying/pasting/adapting the docstring into the README.md in my other rust project, rusted-cypher.

At this moment, cargo-readme is usable, but I still need to figure out how to test it, though.

1 Like

You could let the user make some kind of template where they can specify things that belongs in the readme, but not in the docs. Something like this:

{{title}}

Badge1, badge2, etc.

{{description}}

# Contributing

This is how you can contribute to this project.
It's not really that relevant to the API, so it's
not necessarily something you would include it in
the docs, unless you want to.

This would allow the user to exclude irrelevant things from the docs.

2 Likes

Nice! I'll try it!

Last week I released GitHub - arthurprs/metrohash-rs: Rust MetroHash, which is pretty much your best choice for 16byte+ keys hashmap needs.

This week I'm updating/releasing by Burst Trie container https://github.com/arthurprs/burst-trie which is a plenty fast ordered container.

I'm experimenting with functional features in Rust. With functors and monads.