]> git.proxmox.com Git - rustc.git/blob - src/doc/book/second-edition/src/ch01-00-introduction.md
New upstream version 1.21.0+dfsg1
[rustc.git] / src / doc / book / second-edition / src / ch01-00-introduction.md
1 # Introduction
2
3 Welcome to “The Rust Programming Language,” an introductory book about Rust.
4 Rust is a programming language that’s focused on safety, speed, and
5 concurrency. Its design lets you create programs that have the performance and
6 control of a low-level language, but with the powerful abstractions of a
7 high-level language. These properties make Rust suitable for programmers who
8 have experience in languages like C and are looking for a safer alternative, as
9 well as those from languages like Python who are looking for ways to write code
10 that performs better without sacrificing expressiveness.
11
12 Rust performs the majority of its safety checks and memory management decisions
13 at compile time, so that your program’s runtime performance isn’t impacted. This
14 makes it useful in a number of use cases that other languages aren’t good at:
15 programs with predictable space and time requirements, embedding in other
16 languages, and writing low-level code, like device drivers and operating
17 systems. It’s also great for web applications: it powers the Rust package
18 registry site, [crates.io]! We’re excited to see what *you* create with Rust.
19
20 [crates.io]: https://crates.io/
21
22 This book is written for a reader who already knows how to program in at least
23 one programming language. After reading this book, you should be comfortable
24 writing Rust programs. We’ll be learning Rust through small, focused examples
25 that build on each other to demonstrate how to use various features of Rust as
26 well as how they work behind the scenes.
27
28 ## Contributing to the book
29
30 This book is open source. If you find an error, please don’t hesitate to file an
31 issue or send a pull request [on GitHub]. Please see [CONTRIBUTING.md] for
32 more details.
33
34 [on GitHub]: https://github.com/rust-lang/book
35 [CONTRIBUTING.md]: https://github.com/rust-lang/book/blob/master/CONTRIBUTING.md