Which important features from C/C++ are missing in Rust

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

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

    RFCs for changes to Rust

  • Here: https://github.com/rust-lang/rfcs/pull/1398. there is also a working group for this: https://github.com/rust-lang/wg-allocators.

  • iced

    A cross-platform GUI library for Rust, inspired by Elm

  • In terms of GUI, iced provides consistent interfaces across platforms.

  • 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
  • Micheal has also started planning for async crash dump debugging which hopefully allow for tools like tokio console but for crash dumps.

  • wg-allocators

    Home of the Allocators working group: Paving a path for a standard set of allocator traits to be used in collections!

  • Here: https://github.com/rust-lang/rfcs/pull/1398. there is also a working group for this: https://github.com/rust-lang/wg-allocators.

  • rust

    Empowering everyone to build reliable and efficient software.

  • Doesn't Rust have variadics already for extern C fns? https://github.com/rust-lang/rust/pull/57760

  • wasmtime

    A fast and secure runtime for WebAssembly

  • This posed an interesting obstacle when I wanted to add a JIT to a scripting language. The only way to manipulate standard-library objects from Cranelift is to write an extern "C" function which invokes a method on the object. If the method in question would normally be inlined, like VecDeque::len or Duration::checked_add, this approach carries significant performance overhead. If you want good performance, you're stuck reimplementing most of the standard library yourself.

  • static-rc

    Compile-time reference counting

  • It can... it's not too ergonomic though because you need to manually specify the size of the return array as it cannot be the result of an expression. (See static-rc for an example of usage)

  • 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
  • bevy

    A refreshingly simple data-driven game engine built in Rust

  • I'm not sure if this is the same as what you're looking at, but Bevy has an ECS system that is basically unmatched in terms of ergonomics imo.

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