Aer - a fast, high-productivity programming language

It's a programming language. Also, it's fast and highly productive.

Build for world conquest.

Unstable. Self-hosted, native compiler in progress along with bigger language changes.

For examples besides the demo below, see test/ and std/.

Demo

var std = import "std"

fn main() void {
    var context = std.ui.UIContext("hello")
    var window = context.create_window(800, 600, "Hello")
    var renderer = window.renderer
    renderer.set_clear_color(.dark_grey, 255)

    var i = 0
    var properties = ["lightweight", "productive", "fun"]

    loop {
        for event in window.get_events() {
            if event.type in [.window_close, .key_down] {
                return
            }
            if event.type == .pointer_button_down {
                i = (i + 1) % properties.length
            }
        }

        var ready = renderer.next_frame()
        if not ready do continue

        renderer.move_to(400, 100)
        renderer.line_to(600, 400)
        renderer.line_to(200, 400)
        renderer.close()
        renderer.fill(.red, 255)

        renderer.text("Aer is", 260, 450, 48)
        renderer.fill(.from_int(0xe0e0e0), 255)

        renderer.text("{properties[i]}", 490, 450, 48)
        renderer.fill(.red, 255)

        renderer.render()
    }
}

hello

Build

Aer requires zig 0.16. Tested with v0.16.0-dev.1272+f3309a96a.

zig build
zig-out/Debug/aer/aer test/demo.aer

Code

Support Me