25 releases (12 breaking)

Uses new Rust 2024

0.12.0 Feb 27, 2025
0.10.0 Dec 30, 2024
0.9.0 Nov 29, 2024
0.5.0 Jul 30, 2024
0.0.1 Aug 3, 2022

#101 in Programming languages

Download history 140/week @ 2024-11-24 28/week @ 2024-12-01 16/week @ 2024-12-08 7/week @ 2024-12-15 116/week @ 2024-12-29 14/week @ 2025-01-05 5/week @ 2025-01-12 3/week @ 2025-01-19 118/week @ 2025-01-26 36/week @ 2025-02-02 4/week @ 2025-02-09 5/week @ 2025-02-16 133/week @ 2025-02-23 56/week @ 2025-03-02 2/week @ 2025-03-09

196 downloads per month
Used in 5 crates (4 directly)

MIT/Apache

485KB
16K SLoC

The Air Programming Language

It is designed to be a universal, scalable and optimal programming language for abstraction-optimization and problem-solving.

It is an experimental proof-of-concept project and is still in the very early stages of development.

Goals

  • All reasonable abstractions and problems are expressible
  • Provide a universal, scalable and optimal framework for abstraction-optimization and problem-solving

Design

  • Define abstraction and problem in theoretical computer science
  • Optimize abstractions and solve problems using computability, computational complexity and reverse computation theories

Demo

"A demo of implementing a C-like for function" ! do ; [
    c_for = function ; {
        context_access : mutable,
        call_mode : id,
        call : ctx : args -> do ; [
            [.init, .condition, .next, .body] = .args,
            .ctx | do ; [
                .init,
                .condition loop [
                    .body,
                    .next,
                ],
            ],
        ],
    },
    c_for [[i = 1, sum = 0], i <= 10, i = i + 1, sum = sum + i],
    sum
]

Dependencies

~3–8.5MB
~73K SLoC