← All repos

austral

Systems language with linear types and capability-based security.

capabilitiescompilerlinear-types
Browse cluster: Cluster 13
8,953commits
29contributors
11languages

Tech stack & purpose

Austral is a systems language featuring linear types and capability-based security, designed to enable safe resource management without runtime overhead while constraining third-party code's access to low-level facilities. The language is built with OCaml (the bootstrapping compiler) and compiles to C, and includes features such as typeclasses, algebraic data types, and well-defined arithmetic semantics, while deliberately excluding garbage collection, exceptions, implicit operations, and other constructs deemed unsafe or unpredictable. The project was created by Fernando Borretti and is licensed under the Apache 2.0 license with the LLVM exception. The repository includes a standard library in development, editor support for Vim and VS Code, and extensive test suites demonstrating the compiler's handling of linearity checking, borrowing, typeclasses, and other language features.

Community & reference links

Languages

OCaml
86.1%
TypeScript
5.5%
Python
3.9%
C
1.1%
Vim Script
0.9%
Emacs Lisp
0.9%
Standard ML
0.7%
Nix
0.3%
Shell
0.3%
Makefile
0.3%
Dune
0.1%

Contributors