“Rust is safe” is not some kind of absolute guarantee of code safety

This page summarizes the projects mentioned and recommended in the original post on /r/programming

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • lru-rs

    An implementation of a LRU cache

  • For reference, the fix for https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45720 was as simple as this commit: https://github.com/jeromefroe/lru-rs/commit/ea64c8f932a45434cbc71d3843d28af7c1819864.

  • too-many-lists

    Learn Rust by writing Entirely Too Many linked lists

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • dmd

    dmd D Programming Language compiler

  • D does all this too.

  • unsafe-code-guidelines

    Forum for discussion about what unsafe code can and can't do

  • What doesn't have a well defined meaning is what it means for unsafe code to be sound. Here you have to refer to the unsafe code guidelines, but it's quite a rabbit hole involving Stacked Borrows all the way to "whatever Ralf (Jung) thinks is a good idea". There is active work here that is being done to formalize the notion of soundness in unsafe Rust, but soundness of safe Rust is well defined and well known.

  • rust

    Empowering everyone to build reliable and efficient software.

  • A surprisingly easy property to achieve. Every time you discover a way in which safe code exhibits undefined behavior, declare it out of scope: https://github.com/rust-lang/rust/issues/32670

  • rustc_codegen_gcc

    libgccjit AOT codegen for rustc

  • There are two efforts to get more targets supported with Rust: rustc_codegen_gcc and gccrs. Rust for embedded is fine, but Rust for AVR is unsupported and Rust for PIC-8 will probably never happen for the same reasons GCC and Clang for PIC-8 will never happen. The two best-supported Rust embedded targets are Armv[6-7]-M and RISC-V.

  • gccrs

    GCC Front-End for Rust

  • There are two efforts to get more targets supported with Rust: rustc_codegen_gcc and gccrs. Rust for embedded is fine, but Rust for AVR is unsupported and Rust for PIC-8 will probably never happen for the same reasons GCC and Clang for PIC-8 will never happen. The two best-supported Rust embedded targets are Armv[6-7]-M and RISC-V.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • carbon-lang

    Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)

  • C++ is already quite bloated with features, and it's difficult to keep adding more. Rust got its success mainly because it didn't have to deal with a lot of baggage from trying to be backwards compatible.

  • ixy-languages

    A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python

  • c2rust

    Migrate C code to Rust

  • I expect that is because you're not particularly familiar with either LLVM or Rust, considering C can literally be transpiled to Rust.

  • subsurface

    This is the official upstream of the Subsurface divelog program

  • That didn't stop him from making a pet project in C++: https://subsurface-divelog.org/ I'd say that if he seriously didn't like it, he'd have used C or something else.

  • arm-trusted-firmware

    Read-only mirror of Trusted Firmware-A

  • I assure you that there is no lack of skill; that is just what happens over the course of ten years in a 300,000 line code-base and multiple hundreds of contributors: https://github.com/ARM-software/arm-trusted-firmware/blob/master/Makefile

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts