Chapter 1: Rust for C Programmers

A Compact Introduction to the Rust Programming Language

Draft Edition, 2025

© 2025 S. Salewski

All rights reserved.

Rust is a modern systems programming language designed for safety, performance, and efficient concurrency. As a compiled language, Rust produces optimized, native machine code, making it an excellent choice for low-level development. Rust enforces strong static typing, preventing many common programming errors at compile time. Thanks to robust optimizations and an efficient memory model, Rust also delivers high execution speed.

With its unique ownership model, Rust guarantees memory safety without relying on a runtime garbage collector. This approach eliminates data races and prevents undefined behavior while preserving performance. Rust’s zero-cost abstractions enable developers to write concise, expressive code without sacrificing efficiency. As an open-source project licensed under the MIT and Apache 2.0 licenses, Rust benefits from a strong, community-driven development process.

Rust’s growing popularity stems from its versatility, finding applications in areas such as operating systems, embedded systems, WebAssembly, networking, GUI development, and mobile platforms. It supports all major operating systems, including Windows, Linux, macOS, Android, and iOS. With active maintenance and continuous evolution, Rust remains a compelling choice for modern software development.

This book offers a compact yet thorough introduction to Rust, intended for readers with experience in systems programming. Those new to programming may find it helpful to begin with an introductory resource, such as the official Rust guide, ‘The Book’, or explore a simpler language before diving into Rust.

The online edition of the book is available at rust-for-c-programmers.com.