Argentum

Argentum - a safe, scalable, fast and tiny programming language.

  • Argentum is memory safe, type-safe, const-safe, null-safe, array-index safe and so on. It is safe.
    Unlike other languages that are also pronounced safe, argentum doesn't have and doesn't need unsafe mode at all, also it has no null keyword, no const-casts and no other ways around its safety measures.
    Argentum is rock-solid safe, no-cap.
  • Argentum automates memory management, and (which is unique) object hierarchy management.
    For example, if you declare that an engine belongs to a car, Argentum checks at compile time that no two cars share the same engine instance.
  • Unlike Rust and Swift Argentum guarantees absence of memory leaks.
  • Unlike Java, Go, JS and Python, Argentum doesn't use garbage collector, so no sudden pauses, overheads, and leaks.
  • Argentum has precise predictable object disposal moments, so objects can control any resources, not just memory.
  • Argentum compiles to machine code producing tiny executables with no extra dependencies.
  • Argentum has multithreading without deadlocks and data races.
  • Argentum is simple and expressive, crazy fast and memory-effective.
  • And its interop with C is mostly a pass-through.

Try Argentum compiler:

Hello world in Argentum:

using sys { log }     // Import function `log` from module `sys`
log("Hello world")    // Call it

More examples are here: SQLite example, Web client example, Tutorials

Publications

All publications and articles related to the Argentum features and ideas that were published to the broader audience:

Features

Tutorials

  1. Basic Syntax
  2. Fizz-Buzz.
  3. Graphs with Cycles.
  4. Call C99 functions from Argentum.
  5. SDL Demo.
  6. HTTPS->SQL
  7. Using Debugger

Project status

Links