Hello and welcome to another issue of This Week in Rust! Rust is a systems language pursuing the trifecta: safety, concurrency, and speed. This is a weekly summary of its progress and community. Want something mentioned? Tweet us at @ThisWeekInRust or send us an email! Want to get involved? We love contributions.
Updates from Rust Community
News & Blog Posts
- Announcing Rust 1.5.
- Building an iOS app in Rust, Part 3. Passing owned objects between Rust and iOS.
- Writing an OS in Rust: Accessing and modifying page tables. Part of the series Writing an OS in Rust.
- Rust programming: Creating a Phoronix reader application
- Macro plans - syntax. Proposal to improve the syntax for Rust macros.
- Zero-runtime-cost mixed list in Rust.
- ArcadeRS 1.10: Asteroid attack!. Part of the series ArcadeRS 1.0: The project - a series whose objective is to explore the Rust programming language and ecosystem through the development of a simple, old-school shooter.
- Rust profiling with instruments and FlameGraph on OSX: CPU/Time.
- Type-Level Shenanigans.
- This Week in Redox OS 8.
Notable New Crates & Project Updates
- rusty-cheddar. A Rust plugin to automatically generate C-style header files.
- Iomrascálaí. An AI for the game of Go/Weiqi/Baduk written in Rust.
Updates from Rust Core
78 pull requests were merged in the last week.
- Store MIR in crate metadata.
- Cargo: Bump to 0.8.0.
- std: Remove deprecated functionality from 1.5.
- std: Rename
- Adjust the pointer to an unsized field to the correct alignment.
- Brian Bowman
- Daniel Campbell
- Tianyi Wang
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
No RFCs were approved this week!
Final Comment Period
- Amend RFC 550 with (expanded) abstract specification rather than algorithm.
- Add a
IndexAssigntrait that allows overloading "indexed assignment" expressions like
a[b] = c.
- Allow eliding more type parameters.
- Add thread-local custom panic handlers to customize the behavior of thread panics.
- Allow a custom panic handler.
- Add an
- Provide a syntactic sugar to automatically implement a given trait
Trusing a pre-existing type implementing
- Amend 0809 to reduce the number of traits.
- 12/15. Rust - Rethinking Systems Programming.
- 12/16. SSD Rust meetup - servo + TBD topics.
- 12/21. Paris - Rust Paris.
fn work(on: RustProject) -> Money
- Research Engineer - Servo at Mozilla.
- Senior Research Engineer - Rust at Mozilla.
- Open Source Software Engineer at MaidSafe.
- Software Engineer - Sensor Development at IronNet Cybersecurity.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Crate of the Week
This week's Crate of the Week is Quick Error – a rust-macro which makes errors easy to write.
Quote of the Week
how do cats arbitrate access to a shared typesetting system?
with a mew-TeX
— Nathaniel Theis on Twitter
Thanks to Paul for the tip.