FDD Story Get Started Tutorial Docs Motivation Download GitHub
A New Programming Language

|

ARO is where features become code.
Built for humans. Perfected for AI.

Binary ARO C++ Swift Rust ARO Python C

Write plugins in any language. Compile to a standalone binary.

data.csv users.json events.log ARO report.json metrics.csv alerts.log STREAMING

Data flows through ARO as lazy streams. Process gigabytes with minimal memory.

Everything is a Stream

In ARO, data doesn't sit in memory waiting to be processed. It flows.

When you write Filter the <records> where status = "active", ARO doesn't load all records first. It creates a lazy pipeline that processes data as it arrives.

Chain operations like Filter, Transform, and Aggregate without intermediate allocations. ARO fuses them into a single pass.

Lazy Evaluation Pipeline Fusion Backpressure
Learn about Data Pipelines →

Action. Result. Object.

Every statement follows the natural pattern of how we describe work.

01

Features First

Write code the way you write user stories. Each feature set maps directly to a business capability.

Extract the <user> from the <request>.
02

AI Native

The first language designed for AI collaboration. Natural language syntax that LLMs understand.

Validate the <data> against <schema>.
03

Contract First

Your OpenAPI contract is your routing table. Define your API, ARO handles the rest.

Extract the <id> from the <pathParameters: id>.

Why AI Needs
a New Language

When you ask AI to write code, you describe what you want in natural language. Then the AI translates that into Python, JavaScript, or Rust.

That translation step? It's where bugs are born.

ARO eliminates the gap. The language is the specification. When you write Store the <user> into the <database>, there's no ambiguity.

"The best code reads like a conversation between business and computer."
Intent AI // traditional Translate Result // aro ARO

The same destination. Without the detour.

See ARO in Action

Real examples that show how ARO makes complex tasks simple.

weather-client.aro
(* Fetch weather data from an external API *)
(Application-Start: Weather Client) {
    Log "Fetching weather..." to the <console>.
    Create the <api-url> with "https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41&current_weather=true".
    Request the <weather> from the <api-url>.
    Log <weather> to the <console>.
    Return an <OK: status> for the <startup>.
}

HTTP Client

The Request action fetches from external APIs. Use from for GET, to for POST, PUT, or DELETE. JSON responses are parsed automatically.

GET/POST/PUT/DELETE Auto JSON Headers
Learn more →

Ready to Build?

Join the developers writing the future
one feature at a time.