This document is still a work in progress and thus may be incomplete. In addition, Bismuth is still in early stages of development thus semantics may change as we add in language features.

Beyond this document, the papers on bismuth-lang.org, particularly the original Bismuth paper, may be helpful.

In addition, if you have any questions or comments, feel free to reach out!

Introduction

Bismuth is a programming language designed for distributed, concurrent and mobile systems. In other words, Bismuth is designed for tasks that involve running code on multiple systems, executing code in parallel, or moving programs between systems. Despite the complex and diverse nature of these tasks, Bismuth strives to provide developers with an easy and natural mechanism for communicating these tasks while providing them with powerful correctness guarantees that can help them write better and more secure programs.

About this Guide

This document provides an introduction to Bismuth from how to get started with it to some basic documentation about it.