Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/quantumbfs/openqasm.jl

Parsers and Tools for OpenQASM
https://github.com/quantumbfs/openqasm.jl

openqasm parse quantum quantum-computing yaolang

Last synced: 14 days ago
JSON representation

Parsers and Tools for OpenQASM

Awesome Lists containing this project

README

        

# OpenQASM

[![CI](https://github.com/QuantumBFS/OpenQASM.jl/actions/workflows/ci.yml/badge.svg)](https://github.com/QuantumBFS/OpenQASM.jl/actions/workflows/ci.yml)
[![Coverage](https://codecov.io/gh/QuantumBFS/OpenQASM.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/QuantumBFS/OpenQASM.jl)

Tools for parsing OpenQASM.

## Installation


OpenQASM is a  


Julia Language

  package. To install OpenQASM,
please open
Julia's interactive session (known as REPL)
and press ] key in the REPL to use the package mode, then type the following command

```julia
pkg> add OpenQASM
```

## Usage

This package provides a simple function `OpenQASM.parse` to parse a QASM string to
its AST according to its BNF specification described in [OpenQASM 2.0](https://github.com/Qiskit/openqasm/tree/OpenQASM2.x).

![demo](demo.png)

## Roadmap

- [x] support for QASM 2.0
- [ ] support for QASM 3.0

## Cite Us

If you use OpenQASM.jl in your research, please cite our paper:

```bibtex
@article{Luo2020yaojlextensible,
doi = {10.22331/q-2020-10-11-341},
url = {https://doi.org/10.22331/q-2020-10-11-341},
title = {Yao.jl: {E}xtensible, {E}fficient {F}ramework for {Q}uantum {A}lgorithm {D}esign},
author = {Luo, Xiu-Zhe and Liu, Jin-Guo and Zhang, Pan and Wang, Lei},
journal = {{Quantum}},
issn = {2521-327X},
publisher = {{Verein zur F{\"{o}}rderung des Open Access Publizierens in den Quantenwissenschaften}},
volume = {4},
pages = {341},
month = oct,
year = {2020}
}
```

## License

OpenQASM is released under the MIT license.