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 f150250ab2 ci: fix clippy 10 months ago
.builds ci: fix clippy 10 months ago
.github/workflows ci: fix clippy 10 months ago
builtin fix: crash in node backend when printing numbers 10 months ago
docs feat: assignment operators (#10) 10 months ago
examples feat: assignment operators (#10) 10 months ago
lib feat: assignment operators (#10) 10 months ago
src chore: fix warnings 10 months ago
tests feat: assignment operators (#10) 10 months ago
.gitignore chore: ignore playground 10 months ago
Cargo.lock v0.3.0 10 months ago
Cargo.toml v0.3.0 10 months ago
LICENSE Add license 12 months ago
README.md docs: add github issues link 10 months ago
TODO docs: document while loops 10 months ago
book.toml Add docs 12 months ago
build_docs.py docs: fix build script 10 months ago

README.md

The Sabre Programming language

Continuous integration docs Chat on Matrix

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

Currently, Sabre is a general-purpose toy language. Its primary goal is to be simple and easy to understand, not to be efficient. Most algorithms should run fine, but some features may be unstable. Standard library and documentation are still incomplete. See the open issues for todos.

The Sabre compiler emits JavaScript, and a C backend is currently in development. Backends for WASM, x86 and ARM are planned.

Examples

// examples/fib.sb

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

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

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

// -> 55

Documentation

Documentation is hosted on GitHub Pages.

Installation

See installation.

Chat on matrix

Join here!

License

This software is licensed under the Apache-2.0 license.