#quantum #quil #rigetti

quil-rs

Rust tooling for Quil (Quantum Instruction Language)

121 releases (18 breaking)

0.26.1-rc.0 May 1, 2024
0.25.1 Apr 17, 2024
0.23.0 Mar 8, 2024
0.22.3 Dec 14, 2023
0.8.0 Oct 19, 2021

#243 in Parser implementations

Download history 683/week @ 2024-01-24 126/week @ 2024-01-31 614/week @ 2024-02-07 459/week @ 2024-02-14 1173/week @ 2024-02-21 1631/week @ 2024-02-28 824/week @ 2024-03-06 561/week @ 2024-03-13 195/week @ 2024-03-20 728/week @ 2024-03-27 684/week @ 2024-04-03 798/week @ 2024-04-10 1516/week @ 2024-04-17 844/week @ 2024-04-24 1056/week @ 2024-05-01 935/week @ 2024-05-08

4,634 downloads per month
Used in 3 crates

Apache-2.0

695KB
16K SLoC

Quil Parser & Program Builder

This library is the implementation of the Quil spec in Rust.

It serves three purposes:

  1. Parse Quil programs from strings, and output programs to strings
  2. Manipulate Quil programs within Rust
  3. Construct a dependency graph among program instructions

It should be considered unstable until the release of v1.0.

Crate Features

Feature Description
graphviz-dot Enable plotting ScheduledPrograms in Graphviz dotfile format.
wasm-bindgen Enable compilation to wasm32-unknown-unknown with wasm-bindgen

Testing

When testing this crate, you should run with the --all-features flag to ensure all tests are executed.

cargo test --all-features

lib.rs:

Welcome to the Rust implementation of the Quil quantum programming language.

Within this crate you'll find:

This crate is still early in its development and does not fully support all Quil features, nor claim a stable API. Prior to v1.0, minor-version changes are considered breaking changes. Please pin your versions when needed, and closely follow the changelog when upgrading.

Dependencies

~14MB
~260K SLoC