Quantum programming languages

Quantum programming languages are essential to translate ideas into instructions that can be executed by a quantum computer. Not only are they crucial to the programming of quantum computers at scale but also they can facilitate the discovery and development of quantum algorithms even before hardwar...

Full description

Saved in:
Bibliographic Details
Published inNature reviews physics Vol. 2; no. 12; pp. 709 - 722
Main Authors Heim, Bettina, Soeken, Mathias, Marshall, Sarah, Granade, Chris, Roetteler, Martin, Geller, Alan, Troyer, Matthias, Svore, Krysta
Format Journal Article
LanguageEnglish
Published London Nature Publishing Group 01.12.2020
Subjects
Online AccessGet full text
ISSN2522-5820
DOI10.1038/s42254-020-00245-7

Cover

More Information
Summary:Quantum programming languages are essential to translate ideas into instructions that can be executed by a quantum computer. Not only are they crucial to the programming of quantum computers at scale but also they can facilitate the discovery and development of quantum algorithms even before hardware exists that is capable of executing them. Quantum programming languages are used for controlling existing physical devices, for estimating the execution costs of quantum algorithms on future devices, for teaching quantum computing concepts, or for verifying quantum algorithms and their implementations. They are used by newcomers and seasoned practitioners, researchers and developers working on the next ground-breaking discovery or applying known concepts to real-world problems. This variety in purpose and target audiences is reflected in the design and ecosystem of the existing quantum programming languages, depending on which factors a language prioritizes. In this Review, we highlight important aspects of quantum programming and how it differs from conventional programming. We overview a selection of several state-of-the-art quantum programming languages, highlight their salient features, and provide code samples for each of the languages and Docker files to facilitate installation of the software packages.A variety of quantum programming languages have been developed over the past few years, enabling newcomers and seasoned practitioners alike. This Review gives a brief introduction to quantum programming, overviewing some of the existing languages and the ecosystem around them.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:2522-5820
DOI:10.1038/s42254-020-00245-7