Alternatives to Rust

A compiled systems programming language with no garbage collector, installed through the rustup toolchain manager. The listings below can replace it for an important use case. Each note says what changes if you switch.

The original

Replacements

Listings that take over the same core job as Rust.

  • Go

    An open-source compiled programming language from Google with built-in concurrency and a module system.

    Go offers fast compilation and built-in concurrency with a smaller language to learn, but uses a garbage collector, making it less suited to hard real-time work.

  • Zig

    A general-purpose systems programming language and toolchain that also works as a drop-in C/C++ compiler.

    Zig is a systems language that doubles as a drop-in C/C++ compiler with easy cross-compilation, but it is still pre-1.0 with expected breaking changes.

  • Swift

    A general-purpose, compiled programming language and toolchain available for Linux, macOS and Windows.

    Swift is a compiled language with strong safety guarantees and toolchains for Linux, macOS and Windows, though much of its library ecosystem targets Apple platforms.

  • OCaml

    A functional programming language with a strong static type system and a native-code compiler.

    OCaml offers a strong static type system with a native-code compiler and interactive toplevel, but has a smaller library ecosystem and a functional style to learn.

Also worth comparing

These listings name Rust as their own alternative, so the relationship runs both ways.

  • .NET

    Microsoft's free, open-source, cross-platform runtime and SDK for building apps in C#, F# and Visual Basic.

    Rust replaces the garbage-collected .NET runtime with a compiled language that checks memory safety at compile time, with an integrated package manager, though its ownership model takes time to learn.

  • Kotlin

    A concise, multiplatform programming language from JetBrains for backend, Android, web and desktop apps.

    Rust drops the garbage collector and JVM for compile-time memory safety, with Cargo built in, at the cost of an ownership model that takes time to learn.

Similar software

Related functionality, not a direct replacement.