Skip to content
This repository has been archived by the owner on Jan 12, 2024. It is now read-only.

Latest commit

 

History

History
42 lines (22 loc) · 5.09 KB

FAQ.md

File metadata and controls

42 lines (22 loc) · 5.09 KB

Frequently Asked Questions

Where can I give feedback on the Quantum Intermediate Representation (QIR)?

We very much welcome input for the QIR! We choose to make our current thinking public early on to encourage contributions and feedback on how to make it usable across a wide variety of hardware backends and software frontends. Please use our documentation template to share ideas around QIR.

Where can I find the current specification of the Q# language?

The specification for the latest Q# version shipped with the Quantum Development Kit can be found here. We are working on a more formal spec to add to the current documentation. Please reach out to us by filing and issue following our documentation template if you are interested in contributing or have feedback related to the specs and docs maintained on this repository.

What features are currently being implemented? Is there a roadmap for Q#?

Please take a look at our readme for useful links around the current status. We are working on putting together a roadmap that we will add to this repo in the near future.

How do I make a suggestion for a feature?

Please create a new issue following on our suggestion template.

Can I help implement a feature?

Yes! Please take a look at the proposals that have been approved in principle and are ready for implementation. If a feature is under active development a corresponding open issue labeled with Implementation exists on this repository, and otherwise the development has not yet started. If you would like to help with the implementation of a feature that is already being developed, please comment on the corresponding issue to indicate your interest. If you would like to implement a feature for which development has not yet started, please create an issue following our implementation template. Once the issue is created, we will respond to follow up with a discussion to flesh out the details of the implementation.

How do I create a good feature request?

For every feature there should be a clear purpose and benefit for a large group of users; introducing new features comes at a cost not just in terms of implementation but also in terms of adoption. When introducing a feature, it is hence important to maximize its utility. Furthermore, it should tie in well with other features and syntax; some features are mutually exclusive, whereas others are a natural extension that enhance the flow of the language. Coherence and a predictable evolution of the language are important factors. This document lists further considerations. Be specific when you file an suggestion both regarding the need it addresses and how you suggest to address it. Briefly list the context you can think of; why you think this is the right approach, and what alternatives you see.

Why has my suggestion been declined?

A suggestion may be declined for a variety of reasons, and sometimes we have to decline even features we would love to have. Q# is a domain specific language for a rather unique domain. Please take a look a the Q# design principles as well as other considerations we factor into our decisions.

How can I use Q# and where do I get development tools?

Q# is part of the Quantum Development Kit (QDK) shipped by Microsoft. Please take a look at the documentation for further instructions on what tools are available and how to install them.

Where can I learn more about quantum development and/or quantum computing?

There are a lot of good resources, and we will list but a few suggestions to help you get started. Our Microsoft Learn modules are a good place to get started. The popular Quantum Katas offer a hands-on experience consisting programming tasks that cover topics which progress from very simple to quite challenging. Further explanations can be found in our tutorials and docs.