c#第二章
here. 此处查看该年度的所有发行说明。记住我们是如何开始的 (Remember How We Started)
Our first release of our second year, 0.4, was a triumph! we got a customer request for a big integer type on January 1st, and were able to respond by shipping a new BigInt data type just 29 short days later!!! Remember, we’re outside Seattle, pretty far north, so our winter days are really short.
第二年的第一个发行版0.4取得了巨大的成功! 我们在1月1日收到了一个大整数类型的客户请求 ,并且能够在短短29天后发布新的BigInt数据类型做出回应!!! 请记住,我们在西雅图外面,很北边,所以我们的冬天真的很短。
Our secret? We had started working on the BigInt type in December.
我们的秘密? 我们从12月开始研究BigInt类型。
We also decided to change our release cadence for our second year of Q#. Our first year, we had shipped releases sporadically, when we had some major feature to share, or possibly just a fix to an annoying bug. For our second year, we moved to a more regular release cadence, putting out a new release every month. We hoped that this would make things more predictable for our users and easier for us to manage.
我们还决定更改Q#第二年的发布节奏。 第一年,我们偶尔发布发行版本,当时我们要共享一些主要功能,或者仅仅是修复一个令人讨厌的错误。 在第二年,我们转向了更常规的发布节奏,每月发布一次新版本。 我们希望这将使我们的用户更容易预测事情,并使我们更易于管理。
科学 (Science)
We knew that a lot of people interested in quantum computing, especially in the scientific community, are far more familiar with Python than with C# or other .NET languages. We had shipped a preview version of Python interoperability as part of our first feature release after launch, but it was Windows-only and fairly limited. We knew we had to do better, so we focused on Python for the beginning of 2019.
我们知道,许多对量子计算感兴趣的人,特别是在科学界,对Python的了解远远超过对C#或其他.NET语言的了解。 发布后 ,我们发布了第一个功能版本,其中包括Python互操作性的预览版,但它仅适用于Windows,并且功能有限。 我们知道我们必须做得更好,所以我们在2019年初专注于Python。
In February and March, we added full, cross-platform Python interoperability, plus integration with Jupyter notebooks. Notebooks provide a smooth interactive experience for exploring quantum computing with Q# and Python. We set up the Quantum Katas as notebooks on Binder so that people could learn Q# and quantum computer without having to install any software locally.
在2月和3月,我们添加了完整的跨平台Python互操作性,以及与Jupyter笔记本的集成。 笔记本为使用Q#和Python探索量子计算提供了流畅的交互体验。 我们在Binder上将 Quantum Katas设置为笔记本,这样人们就可以学习Q#和量子计算机,而不必在本地安装任何软件。
In March, we also ran our second Q# coding contest.
3月,我们还举办了第二届Q#编码竞赛 。
春天(最后) (Spring (At Last))
We spent the spring cleaning up a lot of loose ends and rough edges, preparatory for the coming open source release. Part of the clean up was delivering a boatload of new Q# language features.
在Spring,我们清理了许多松动的末端和粗糙的边缘,为即将发布的开源版本做准备。 清理工作的一部分是交付大量新的Q#语言功能 。
Our spring cleaning extended to a major restructuring and reorganization of the Q# libraries. As part of that, we shipped a new numerics library. The Q# Style Guide made its first public appearance. The chemistry library was both reorganized and extended, including a variational eigensolver contribution from Microsoft Quantum Network partner 1QBit.
我们的Spring大扫除扩展到Q#库的重大重组和重组。 为此,我们提供了一个新的数字库 。 《 Q#样式指南》首次公开露面。 化学库既重组和扩展,包括变eigensolver从贡献微软量子网络合作伙伴1QBit 。
在宇宙中脱颖而出 (Standing Out in the Universe)
Finally we were ready for the big reveal: on July 11th, we open-sourced the entire Q# compiler and QDK. It was extremely exciting for us to be able to share what we had built with the community this way. Being open source means that others can see what we’ve done and how we’ve evolved, and can help move the entire community forward by contributing code or suggestions or complaints.
终于,我们准备好了大曝光:7月11日, 我们开源了整个Q#编译器和QDK 。 能够以这种方式与社区分享我们所建立的东西,这对我们来说非常令人兴奋。 开源意味着其他人可以看到我们所做的事情以及我们如何发展,并且可以通过贡献代码,建议或投诉来帮助推动整个社区向前发展。
Along with moving our code to open source, we’ve moved our development as well. Having our work in progress visible to the community allows all of you to see what’s coming early, and gives you a chance to have a voice in what we do before we’ve shipped it. This kind of transparency helps us deliver a better, more useful product — and as a developer, it’s incredibly helpful and gratifying to be able to get feedback early, before we’re locked into a particular path.
除了将代码移至开源之外,我们还转移了开发内容。 在社区中看到我们正在进行的工作,使大家都可以尽早看到即将发生的事情,并让您有机会在发布之前就我们所做的事情发表意见。 这种透明性可以帮助我们交付更好,更有用的产品-作为开发人员,在我们陷入困境之前,能够尽早获得反馈非常有用和令人满足。
这是好消息 (Here’s the Good News)
Not all of the news was about Q# or the QDK. All through the past year there has been steady new development on the Quantum Katas. There are now a grand total of 19 (yes, nineteen!) Katas available, all but one of which are also available online as Jupyter notebooks. We’ve also added 8 tutorials implemented as Jupyter notebooks that provide gentle, self-paced introductions to the basic math and concepts of quantum computing and to a couple of key algorithms.
并非所有新闻都是关于Q#或QDK的。 在过去的一年中, Quantum Katas一直在稳步发展。 现在总共有19种(是的,有19种!)Katas,除了其中的一种以外,还可以在线购买Jupyter笔记本。 我们还添加了8个使用Jupyter笔记本实现的教程,这些教程对量子计算的基本数学和概念以及一些关键算法进行了自定进度的温和自我介绍。
Here at Microsoft, the Q# and QDK team led projects in both Microsoft’s internal Hackathon event in July and in a Hackathon run as part of Hacktoberfest. Between the two, we generated about 20 pull requests for Q#, the QDK, the libraries, and the Katas!
在Microsoft,Q#和QDK团队在7月举行的Microsoft内部Hackathon活动中以及在Hacktoberfest中运行的Hackathon中领导了项目。 在这两者之间,我们为Q#,QDK,库和Katas生成了大约20个拉取请求!
在云层之上 (Above the Clouds)
Just because we had moved Q# and the QDK to open source didn’t mean that we didn’t have any tricks up our sleeves. In early November, we Azure Quantum, a new Azure service that would provide access to quantum hardware and simulators and quantum-inspired optimizers from Microsoft and a host of partners. In particular, this means that soon you’ll be able to use Q# and Azure Quantum to run quantum applications on systems from 1QBit, Honeywell, IonQ, and QCI.
仅仅因为我们已将Q#和QDK移至开源,并不意味着我们没有袖手旁观。 在11月初,我们推出了Azure Quantum ,这是一项新的Azure服务,可以从Microsoft及其合作伙伴那里访问量子硬件和仿真器以及受量子启发的优化器。 特别是,这意味着您很快就可以使用Q#和Azure Quantum在1QBit , Honeywell , IonQ和QCI的系统上运行量子应用程序。
For us on the development team, this is incredibly exciting: full end-to-end use of Q# to drive execution of an algorithm on real quantum hardware is what all of this work is all about.
对于开发团队中的我们而言,这是令人难以置信的激动:所有这些工作的全部目的就是完全使用Q#来驱动算法在实际量子硬件上的执行。
c#第二章