If you could re-design Rust from scratch today, what would you change?

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

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

    Empowering everyone to build reliable and efficient software.

    This is fully implemented, it just needs someone to write up documentation and a stabilization report and then it can be stabilized. https://github.com/rust-lang/rust/issues/71126

  • rfcs

    RFCs for changes to Rust

    According to this comment and this RFC, it could be because IEEE754 totalOrder and the high-performance paths actually implemented in the silicon disagree, but I don't remember that being how it was explained to me.

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

  • Idris2

    A purely functional programming language with first class types

    I was curious about this and took a bit of a look: it looks like they weren't able to reconcile multiplicities with linear types? See Idris2#73 and Idris2#879

  • bincode

    A binary encoder / decoder implementation in Rust.

    I've built type-specific hacks to avoid this which produce up to 50% runtime improvements. Latest one is in this PR: https://github.com/bincode-org/bincode/pull/337. The standard library should provide a way to sidestep the copy through a pointer. Useful BufRead/BufWrite traits would be a good start.

  • lang-team

    Home of the Rust lang team

    The roadblock there isn't the implementation, it's making it all work backward-compatibly. The current status is at https://github.com/rust-lang/lang-team/issues/60#issuecomment-814509681

  • gridly-rs

    A 2D grid library written for humans instead of linear algebraists.

    I'm going through this right now with gridly, my 2D grids library. The main feature is a large and comprehensive set of useful adapters for viewing grids- viewing rows and columns, iterating, etc. I've implemented the whole thing immutably and I'm dreading having to essentially copy-paste all of that for the mutable version.

  • purescript

    A strongly-typed language that compiles to JavaScript

    ... devastatingly anti-modular character of globally coherent type classes ...

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

  • rust-ordered-float

    This bug about using IEEE 754 totalOrder for the ordered-float crate had one commenter hit on the explanation I think I remember being given for why IEEE 754 is unsuitable, regardless of performance:

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