You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Garrit Franke b34944e257 Compile stdlib seperately 3 years ago
.builds Add node package for testing 3 years ago
.github/workflows Fix run command 3 years ago
builtin Compile stdlib seperately 3 years ago
docs Add documentation for datatypes 3 years ago
examples Compile stdlib seperately 3 years ago
lib Add C backend 3 years ago
src Compile stdlib seperately 3 years ago
.gitignore Add docs 3 years ago
Cargo.lock Add builtin functions 3 years ago
Cargo.toml Compile stdlib seperately 3 years ago
LICENSE Add license 3 years ago
README.md Add documentation for datatypes 3 years ago
TODO Remove TODO item 3 years ago
book.toml Add docs 3 years ago
build_docs.py Use git switch for building docs 3 years ago
playground.js Add optional types for declares 3 years ago

README.md

The Sabre Programming language

builds.sr.ht status docs

Sabre is a bullshit-free (©) programming language that gets out of your way. It is meant to "just work", without adding unnecessary and bloated language features.

State of this projects

Basic algorithms like the fibonacci sequence should compile fine. More sophisticated programs will not work yet. See TODO for a roadmap.

The Sabre compiler emits JavaScript, until the language has matured sufficiently. Backends for WASM, C, x86 and ARM are planned.

Examples

// examples/fib.sb

fn main() {
    let num = 10
    println(fib(num))
}

fn fib(n) {
    if n <= 1 {
        return n
    }

    return fib(n-1) + fib(n-2)
}

// -> 55

License

This software is licensed under the Apache-2.0 license.