Rust is a systems programming language that runs fast, prevents segmentation faults, and guarantees thread safety. It accomplishes these goals by being memory safe without using garbage collection. The language enables developers to write programs with the performance and control of a low-level language, but with the powerful abstractions of a high-level language.
Rust is ideal for systems, embedded, and other performance critical code.
We publish a series covering the best open source programming books for other popular languages. Read them here.
By Steve Klabnik and Carol Nichols (HTML)
The Rust Programming Language teaches you how to program in Rust. It’s a comprehensive resource for all topics related to Rust, and is the primary official document of the language.
The second edition is a rewrite that will be printed by NoStarch Press, available around October 2017.
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
The primary reference for the Rust programming language is contained in a separate book.
By Rust Programming Team (298 pages)
Rust by Example is a collection of code examples that illustrate various Rust concepts and standard libraries.
A PDF version is available here.
The book is licensed under the Apache License, Version 2.0 or the MIT license.
By Nick Cameron (58 pages)
This tutorial is intended for programmers who already know how pointers and references work and are used to systems programming concepts such as integer widths and memory management.
The author intends to cover, primarily, the differences between Rust and C++ to get you writing Rust programs quickly without lots of fluff you may know.
Licensed under the Apache License, Version 2.0 or the MIT license.
By The Rust Team (117 pages)
This book digs into all the gritty details so coders can write correct unsafe Rust programs.
By Carlo Milanesi (312 pages)
This book is intended for newcomers to Rust. Only a basic knowledge of programming is required, preferably in C or C++ language.
The book is published under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.