Skip to content

Memory Safety ​

Auto combines Rust-inspired ownership with smart casts and flow typing for memory-safe code that remains ergonomic.

Ownership System ​

Every value in Auto has a clear owner. When the owner goes out of scope, the value is automatically cleaned up. Ownership can be:

  • Transferred — moving a value to a new owner
  • Borrowed — lending a reference without transferring ownership
  • Shared — multiple read-only references

Smart Casts ​

Auto's type system tracks the state of values through control flow. After a type check or condition, the type is automatically narrowed:

auto
if x is String {
    // x is automatically cast to String here
    x.len()
}

Flow Typing ​

The compiler tracks which variables are initialized, moved, or modified through each code path, preventing use-after-move and uninitialized access bugs at compile time.

Released under the MIT License.