Coding

Rust – systems programming language

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

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted