Rust is an open source, curly-brace, block-structured expression, general purpose, multi-paradigm, compiled language. It visually resembles the C language family, but differs significantly in syntactic and semantic details.
Its design is oriented toward concerns of “programming in the large”, that is, of creating and maintaining boundaries – both abstract and operational – that preserve large-system integrity, availability and concurrency.
Rust supports a mixture of imperative procedural, concurrent actor, object-oriented and pure functional styles. Rust also supports generic programming and metaprogramming, in both static and dynamic styles.
Features include:
- Type – system static, nominal, linear, algebraic, locally inferred.
- Multi-paradigm: pure-functional, concurrent-actor, imperative-procedural, OO:
- First-class functions, cheap non-escaping closures.
-
- Algebraic data types (called enums) with pattern matching.
-
- Method implementations on any type.
-
- Traits, which share aspects of type classes and interfaces.
- Memory safety – no null or dangling pointers, no buffer overflows, no use-before-initialize or use-after-move.
- Concurrency – lightweight tasks with message passing, no shared memory.
- Generics – type parameterization with type classes.
- Exception handling – unrecoverable unwinding with task isolation: task failure / unwinding, trapping, RAII / dtors.
- Memory model – optional task-local GC, safe pointer types with region analysis.
- Compilation model – ahead-of-time, C/C++ compatible.
- Lightweight tasks (coroutines) with expanding stacks.
- Fast asynchronous, copyless message passing.
- Optional garbage collected pointers.
- All types may be explicitly allocated on the stack or interior to other types.
- Static, native compilation using LLVM.
- Direct and simple interface to C code.
- Works with existing native toolchains, GDB, Valgrind, Instruments, etc.
- Multi-platform.
Website: www.rust-lang.org
Support: GitHub
Developer: Rust Project Developers
License: Apache License 2.0 or MIT License
Return to New Programming Languages
| Explore Linux | |
|---|---|
| Best Free and Open Source Software - A huge collection of recommended free and open source software covering every major category. | |
| In-depth Linux Software Reviews - Detailed assessments of Linux software covering features, usability and overall quality. | |
| The Big List of Active Linux Distros - An extensive collection of actively developed Linux distributions. | |
| Open Source Alternatives - Alternatives to software and services from Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle and others. | |
| Essential Linux System Tools - Indispensable utilities for monitoring, maintaining and managing Linux systems. | |
| Linux Productivity Tools - Useful utilities for improving productivity and streamlining everyday tasks. | |
| Alternatives to Popular CLI Tools - Modern alternatives to familiar command-line utilities supplied with Linux systems. | |
| Awesome Free Linux Game Tools - Tools, utilities and companion software that improve gaming on Linux. | |
| Machine Learning on Linux - Machine learning and deep learning software, self-hosted applications and practical tools. | |
| Saving Money with Linux - Practical ways to reduce electricity consumption and lower computing costs with Linux. | |
| Linux Candy - Fun, entertaining and sometimes delightfully quirky software from the lighter side of Linux. | |

Please read our Comment Policy before commenting.