Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Quil: A Portable Quantum Instruction Language


This repository contains the reference specification for the Quil language in addition to some useful extras outlined below.

Repository layout:

  • /examples: examples of Quil
  • /grammars: example grammars used by parser generators
  • /paper: the source and rendered files for the Quil reference paper, by Smith et al
  • /rfcs: proposals for adding features or changing Quil
  • /spec: the Quil language specification

Known Usages

The following is a list of known usages of the Quil language. Open a pull request to add your own to this list.

Language bindings:

  • PyQuil: A library for easily generating Quil programs to be executed using the Rigetti Forest SDK


  • quilc: The Rigetti optimizing Quil compiler


  • qvm: The Rigetti high-performance quantum virtual machine