CommunityNews

CommunityNews

High Assurance Rust

This book is an introduction to building performant software we can justifiably trust. That means having sufficient data to support confidence in our code’s functionality and security. Trustworthiness is a hallmark of high assurance software.

With assurance as our driving concept, we’ll take a hands-on, project-based approach to two fundamental but often inaccessible topics in software development: systems programming and low-level software security.

You’ll learn Rust - a modern, multi-paradigm language that emphasizes speed and correctness. Most programming books teach a new language by presenting a dozen small, unrealistic programs. Not this one.

We’ll design, write, and validate a fully-featured alternative to the ordered map and set implementations in Rust’s standard library. You’ll gain a deep understanding of the Rust language by re-implementing one of its major dynamic collections, one idiomatic API at a time.

Unlike the standard version, our implementation will be:

  • Maximally Safe. Upholds Rust’s strongest memory safety guarantees, for all possible executions.
    • To test properties the compiler can’t prove, we’ll learn advanced program analysis techniques, including differential fuzzing and deductive verification*.
  • Extremely Portable. Capable of running on every operating system, or even without one (e.g. “bare metal”).
    • Our library is a hardened component. To integrate it within larger codebases, we’ll add CFFI bindings to make the Rust functions callable from other languages - including C and Python.
  • Highly Available. Offers fallible APIs for handling cases that could otherwise result in a crash.
    • E.g. Out-of-Memory (OOM) error - when all pre-allocated memory has been exhausted.

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Where Next?

Popular Backend topics Top

PragmaticBookshelf
Take your Go skills to the next level by learning how to design, develop, and deploy a distributed service. Start from the bare essential...
New
PragmaticBookshelf
Elixir's straightforward syntax and this guided tour give you a clean, simple path to learn modern functional programming techniques. Exp...
New
PragmaticBookshelf
Construct, analyze, and visualize networks with networkx, a Python language module. Discover how to work with social, product, temporal, ...
New
PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
PragmaticBookshelf
Teach yourself the core OTP abstractions in a short, practical book—first published with Groxio's Programmer Passport—from the author of ...
New
PragmaticBookshelf
Build Rails applications that scale. Discover the small changes that make a big difference in efficiency. Design applications for perform...
New
PragmaticBookshelf
Done poorly, unit testing wastes your time and degrades your code. So pick up the third edition of this book and see how to test properly...
New
PragmaticBookshelf
Get the comprehensive, insider information you need for Rails 7.2 with the new edition of this award-winning classic. Sam Ruby @ruby...
New
PragmaticBookshelf
Take your experimentation strategy to the next level so you can effectively understand the impact of changes to user, product, and busine...
New
pragdave
Classroom-tested by generations of students, this new edition of the popular intro to programming book is for anyone who wants to underst...
New

Other popular topics Top

New
PragmaticBookshelf
Andy and Dave wrote this influential, classic book to help their clients create better software and rediscover the joy of coding. Almost ...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
PragmaticBookshelf
Leverage Elixir and the Nx ecosystem to build intelligent applications that solve real-world problems in computer vision, natural languag...
New
New
PragmaticBookshelf
Build modern server-driven web applications using htmx. Whatever programming language you use, you’ll write less (and cleaner) code. ...
New
sir.laksmana_wenk
I’m able to do the “artistic” part of game-development; character designing/modeling, music, environment modeling, etc. However, I don’t...
New
PragmaticBookshelf
Overarching tutorial for Python beginner and intermediate developers that teaches web development with the Flask framework. Miguel Gr...
New
PragmaticBookshelf
Escape callback hell and ship fast, clean code that reads as smoothly as it runs. Squash bugs and stamp out memory leaks with an intuitiv...
New
PragmaticBookshelf
This book forgoes the abstract and instead provides concrete examples to help you better leverage the unique properties of Elixir, Erlang...
New