⚛️🐍 AutoQASM

AutoQASM provides a Pythonic developer experience for writing quantum programs. The name AutoQASM is derived from the name of the AutoGraph module of TensorFlow. AutoQASM uses AutoGraph to construct quantum assembly (QASM) programs rather than TensorFlow graphs.

AutoQASM provides a natural interface for expressing quantum programs with mid-circuit measurements and classical control flow using native Python language features. It allows the construction of modular programs consisting of common programming constructs such as loops and subroutines. This enables a more imperative programming style than constructing programs via a series of function calls on a circuit object.

Although it is still a work in progress, the intent is that AutoQASM will support any quantum programming paradigm which falls into the OpenQASM 3.0 language scope. AutoQASM supports serializing quantum programs to OpenQASM, which allows the programs to interoperate with any library or service that supports OpenQASM programs, such as Amazon Braket.