Q Sharp

历史

在2017年9月26日的Microsoft Ignite主题演讲中，微软宣布他们将发布一种专门针对量子计算机的新编程语言。 2017年12月11日，微软将Q#作为量子开发套件的一部分正式发布。

用法

Q#仅可作为Visual Studio的单独下载的扩展名提供。 Quantum开发套件附带一个能够运行Q#的量子模拟器。
为了调用量子模拟器，使用另一种.NET框架，它为模拟器提供（经典）输入数据，并从模拟器中读取（经典）输出数据。

设计

Q#的设计目的是为了摆脱传统计算机语言对于畅通电子计算机编程模型的思维模式，转而通过更加专注算法的方式来对量子计算机能够拥有更为良好的适配，而且传统语言一般不支援对于量子位元的控制。Q#的针对目标是大量使用量子计算的应用程序的高效率开发，而不是简单算法的固定实现。

功能

Q#的一个主要特征是能够为算法创建并且能够使用量子位元，因此Q#的能力中最为突出的就是能够通过受控反闸和阿达马变换进行量子缠结并且引入量子位元的叠加。个别地来说，有托佛利闸、包立矩阵等，更多内容详见量子闸。

档案以及资源

目前，可用于Q#的资源很少，但官方文档已发布有Microsoft Developer Network：Q#、Microsoft Quantum Github。其中在Github上的项目也是一个大型示例项目程式的集合，其实现了各种量子算法以及调试模型。
微软在Codeforces上也主持过一场量子编码竞赛，并在当时提供了相关材料以帮助回答部落格文章中所提到的问题，以及教程中问题的详细解决方案。
微软提供了一系列的学习练习，以帮助学习Q#。其中包含各种资源的链接以及问题的解决方案。

语法

Q#在语法上与C#和F#类似，但也有一些显著差异。