Home

Awesome

<br> <p align=center><img src="logo.png" width=100vw></p>

The Basil Programming Language

println "Welcome to Basil!"

def greetings = ["Hello" "Nice to meet you" "Salutations"]

def greet name? greeting? =
    println greeting + ", " + name + "!"

println "What's your name?"
greet (read String) greetings[1]
<p align=center><sub>For more examples, see the <code>example/</code> directory located in this project's root!</sub></p>

Basil is a fast and flexible language for expressing complex problems in natural terms without compromising readability, simplicity, or performance.

Featuring...*

<p align=center><sub>*Note: Basil is <i><b>highly WIP</b></i>! The language is unstable, and these claims may or may not apply on all platforms or for all applications.</sub></p>

Installation

Currently, we only support building the Basil compiler from source. You'll need a C++17-conformant C++ compiler, a Python 2.7 or Python 3 interpreter, and maybe a bit of resourcefulness...

$ git clone https://github.com/basilTeam/basil
$ ./build.py --help             # lists all build options (compiler to use, additional flags, etc)
$ ./build.py basil-release
$ bin/basil help

Basil's language runtime can be compiled separately, as either a statically or dynamically linked library.

$ ./build.py librt-static       # to build a statically-linked library
$ ./build.py librt-dynamic      # to build a dynamically-linked library

Supported Platforms

Operating Systems:

Architectures:


License

Basil is distributed under the 3-Clause BSD License. See LICENSE for details.