While systems programming languages have greatly evolved since the introduction of C more than 40 years ago, our capacity for dumb mistakes with enormous consequences has remained unchanged, with vivid examples regularly in the news. This O'Reilly report examines Rust, a new systems programming language that combines safety and security with performance on a par with C and C++.
Author Jim Blandy from Mozilla explains how Rust achieves this combination via a sophisticated and flexible type system, working together with a novel "borrow checker." Rust promises:
- No null pointer dereferences. Programs won’t crash because you forgot to check whether a pointer was null.
- No dangling pointers, no leaks. Every value will live as long as it must, and no longer.
- No buffer overruns. Your program will never access elements beyond the end or before the start of an array.
The first two come at no run-time cost: they’re checked entirely at compile time. These memory safety guarantees also eliminate data races from multi-threaded programming, making concurrency much easier to use.
With this report, you'll learn how to put Rust’s safety, performance, and trustworthy concurrency to use, and you'll understand how the type system and borrow checker affect the way you write your code.
- Title: Why Rust?
- Release date: September 2015
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491927298
You might also like
40 Algorithms Every Programmer Should Know
Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental …
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
Data Science from Scratch, 2nd Edition
To really learn data science, you should not only master the tools—data science libraries, frameworks, modules, …
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …