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.

53 lines
1.7 KiB

1 year ago
# The Sabre Programming language
12 months ago
[![](https://img.shields.io/crates/v/sabre-lang.svg)](https://crates.io/crates/sabre-lang)
![Continuous integration](https://github.com/garritfra/sabre/workflows/Continuous%20integration/badge.svg?branch=master)
1 year ago
[![docs](https://img.shields.io/badge/docs-mdBook-blue.svg)](https://garritfra.github.io/sabre/latest)
[![Chat on Matrix](https://img.shields.io/badge/chat-on%20Matrix-green)](https://matrix.to/#/#sabre:matrix.slashdev.space?via=matrix.slashdev.space)
1 year ago
Sabre is a bullshit-free (©) programming language that gets out of your way.
1 year ago
It is meant to "just work", without adding unnecessary and bloated language features.
1 year ago
12 months ago
## State of this project
1 year ago
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](https://github.com/garritfra/sabre/issues) for todos.
1 year ago
The Sabre compiler emits JavaScript, and a C backend is currently in development. Backends for WASM, x86 and ARM are planned.
1 year ago
## Examples
```rs
// examples/fib.sb
1 year ago
fn main() {
let num: int = 10
println(fib(num))
1 year ago
}
fn fib(n: int) {
1 year ago
if n <= 1 {
return n
}
return fib(n-1) + fib(n-2)
}
// -> 55
1 year ago
```
12 months ago
## Documentation
Documentation is hosted on [GitHub Pages](https://garritfra.github.io/sabre).
## Installation
See [installation](https://garritfra.github.io/sabre/latest/introduction/installation.html).
## Chat on matrix
[Join here!](https://matrix.to/#/!eaupsjLNPYSluWFJOC:matrix.slashdev.space?via=matrix.slashdev.space)
1 year ago
## License
This software is licensed under the [Apache-2.0 license](./LICENSE).