youtube image
From YouTube: Nicholas Matsakis: RUST:Reach Further

Description

Rust is a new programming language that is growing rapidly. Rust's goal is to help in writing programs that are at once correct and efficient. Rust offers performance comparable to C++ and, like C++, has minimal runtime requirements -- it does not require a runtime or garbage collector, and you can even choose to forego the standard library. At the same time, Rust offers some of the strongest safety guarantees around -- not only type and memory safety, but also data-race freedom!

A key part of Rust's design is that the language itself doesn't "privilege" one form of parallel programming over the others.Instead, Rust supplies two core primitives -- ownership and traits -- that enable libraries to implement a wide variety of parallel styles. Currently, libraries exist to support newer models like actors and futures, but also more traditional threaded programming based on locks. There are also a host of non-blocking data structures available, as well as a work-stealing runtime that makes data parallelism very easy.

This talk will cover some of the highlights of Rust's design, and show how Rust's type system not only supports different parallel styles but also encourages users to write code that is amenable to parallelization. I'll also talk a bit about recent work at Mozilla, where Rust was instrumental in parallelizing parts of Firefox's CSS engine.