• From Mozilla
  • Strong, static typing
  • Fully complied to native code
    • No VM
  • Memory safe guarantee
    • No garbage collector

Rust is a programming language that came out of the research department at Mozilla. It's main goal is to provide the performance of fully compiled languages like C and C++, while maintaining a memory guarantee that those languages cannot. It does this by adding a few extra restrictions to the compiler. What this means for developers is, if your program compiles you shouldn't need to worry about runtime errors.

It features a strong, static type system, this means that any variable or return value must have a type declaration. That might seem like it would be painful to write however the compiler can infer the type of almost all of your variable just from the context. In the event you need something more flexible, it has both generic types and enum cases with associated values.

Generic? Associated value?