What's everyone working on this week (50/2017)?


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


Again a remake of barren planet rendering in Rust + Vulkano before i did this in Gfx-rs. Special thanks to iquizles and some other people for releasing analytical noise derivatives for 3d noises which is far quicker way to generate 3d normals.



After a busy week I got a bit of time to work on uom (type-safe zero-cost dimensional analysis). Tests are now compiling for nearly all underlying storage types. I think I just need to remove +=/-=/… tests for BigInt.

I ended up writing a wrapper struct for quickcheck::Arbitrary. Am I crazy here? Any better way to do this as quickcheck itself doesn’t implement Arbitrary for types from num.


Doing some major cleanup of the spmc-buffer test suite as a preparation for the exploration of “raw” interfaces and the release of v1. Going through some busy life period at the moment, so it’s not moving terribly fast.


Making a super chip 8 emulator, complete with assembler and disassembler.


Analysing and refactoring event-scheduler in mio, balancing system-events and custom-events. The code base of mio is very well, might do without API changes.
Just, one MT-utest still failing “with_small_events_collection”.
Any comments/hints regarding the failing utest are welcome, still analyzing the issue.

As for the failing utest “with_small_events_collection”, it seems the polling thread keeps on getting events, not sure if it is the test or a fault in the modified event handler.



Just finished rewriting a total of ~10k lines of code for curtain and rustorm and rebrand it into a new name in a span of 2 months. Working on the docs and readme.


After a brief detour, I’m back on embedded duty. I released lpc82x 0.2.0 and 0.2.1, and now I’m updating lpc82x-hal. I’ve mentioned it here a few times, but I haven’t really announced it. There’s still a lot to do before I want to do that, and that’s what I plan to work on over the next few weeks.


Finally had few evenings to implement capturing-glob. The idea is that when you match files by glob pattern you might want to mark some parts of it for future use, similarly to capture groups in regular expressions.

For example, doing mass renames:

> imaginary_rename '(*).JPG' '$1.jpg'
> imaginary_rename '(**)/section-(*).rst' '$1/sections/$2.rst'

(note: substitution is not included)

My plan is to use it for complex YAMLy configurations (amongst other things), i.e. the following:

commands: !IncludeMap "commands/(*).yaml"

Is converted into:

  xxx:  # .. contents of commands/xxx.yaml
  yyy:  # .. contents of commands/yyy.yaml