Metadata-Version: 2.0
Name: quantum-blackbird
Version: 0.2.1
Summary: Blackbird is a quantum assembly language for continuous-variable quantum computation by Xanadu Inc.
Home-page: http://xanadu.ai
Maintainer: Xanadu Inc.
Maintainer-email: josh@xanadu.ai
License: Apache License 2.0
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Physics
Provides: blackbird
Requires-Dist: numpy (>=1.16)
Requires-Dist: sympy
Requires-Dist: antlr4-python3-runtime (>=4.7.1)
Requires-Dist: networkx

Blackbird Quantum Assembly Language
###################################

.. image:: https://img.shields.io/travis/com/XanaduAI/blackbird/master.svg?style=for-the-badge
    :alt: Travis
    :target: https://travis-ci.com/XanaduAI/blackbird/

.. image:: https://img.shields.io/codecov/c/github/xanaduai/blackbird/master.svg?style=for-the-badge
    :alt: Codecov coverage
    :target: https://codecov.io/gh/XanaduAI/blackbird

.. image:: https://img.shields.io/readthedocs/quantum-blackbird.svg?style=for-the-badge
    :alt: Read the Docs
    :target: https://quantum-blackbird.readthedocs.io


Blackbird is a quantum assembly language for continuous-variable quantum computation, that can be used to program Xanadu's quantum photonics hardware and Strawberry Fields simulator.



Features
--------

The Blackbird repository contains three *separate* packages:

* ``src``: The Blackbird grammar specification in enhanced Brackus-Naur form

* ``blackbird_python``: to develop Blackbird parsers for integration with Python programs

* ``blackbird_cpp``: libraries and header files needed to develop Blackbird
  parsers for integration with C++ programs

All of these packages are independent, and can be installed separately without
depending on one-another. *However*, if the grammar is ever modified, there
is a command for updating the autogenerated parts of the Python and C++
parsers.

In addition, this repository contains:

* ``example``: Example Blackbird scripts

* ``apps``: Example Python/C++ applications using the above parsers


Getting started
---------------

Blackbird is a development library, designed to easily integrate Blackbird code
into applications and interfaces.

To get the Blackbird grammar installed and running on your system, begin at the `grammar installation guide <https://quantum-blackbird.readthedocs.io/en/latest/installing.html>`_. Then, familiarize yourself with the Blackbird's `syntax and grammar <https://quantum-blackbird.readthedocs.io/en/latest/syntax.html>`_ for specifying photonic quantum circuits. You can even generate Blackbird parsers for any target language supported
by ANTLR, including Java, C#, JavaScript, Go, and Swift.


If you only want to develop an application that makes use of the `Python parser <https://quantum-blackbird.readthedocs.io/en/latest/blackbird_python/init.html>`_ or the `C++ parser <https://quantum-blackbird.readthedocs.io/en/latest/blackbird_cpp/overview.html>`_, you can go directly to those sections and their corresponding installation guides.



How to cite
-----------


If you are doing research using Blackbird, please cite

    Nathan Killoran, Josh Izaac, Nicolás Quesada, Ville Bergholm, Matthew Amy, and Christian Weedbrook.
    *Strawberry Fields: A Software Platform for Photonic Quantum Computing* 2018. `arXiv:1804.03159 <https://arxiv.org/abs/1804.03159>`_

Support
-------

- **Source Code:** https://github.com/XanaduAI/Blackbird
- **Issue Tracker:** https://github.com/XanaduAI/Blackbird/issues

If you are having issues, please let us know by posting the issue on our Github issue tracker.

License
-------

Blackbird is **free** and **open source**, released under the Apache License, Version 2.0.


