1 Introducing Rust

This chapter covers:

  • Highlighting some great features of the language and its community
  • Exposing you to Rust’s syntax
  • Introducing the goals of the project
  • Discussing where Rust might be useful and when to avoid it
  • Building your first Rust program
  • Explaining how Rust compares to object-orientated and wider languages

Welcome to Rust, the programming language that rewards your curiosity. Once you scratch the surface, you will find a programming language with unparalleled speed and safety that is still comfortable to use. Learning the language can be challenging, but the rewards can be immense.

Rust has established a strong following. In Stack Overflow’s annual developer survey, Rust has won “most loved programming language” in 2016, 2017, 2018 and 2019. The distinction is awarded to the language that has the highest proportion of current developers in the language who want to continue using it.

1.1  How is Rust used?

The language has proven its ability to build powerful, reliable software.

Large technology leaders have adopted Rust:

1.2  What is it like to advocate for Rust at work?

1.3  What does Rust look and feel like?

1.4  What is Rust?

1.4.1  Safety

1.4.2  Productivity

1.4.3  Control

1.5  Rust’s Big Features

1.5.1  Performance

1.5.2  Concurrency

1.5.3  Memory Efficiency

1.6  Downsides of Rust

1.6.1  Compile Times

1.6.2  Strictness

1.6.3  Size of the Language

1.6.4  Hype

1.7  Where does Rust fit best?

1.7.1  Data Processing

1.7.2  Extending an Application

1.7.3  Operating in Resource-constrained Environments