本文章为机器翻译。https://blogs.msdn.microsoft.com/visualstudio/2018/12/24/qsharp-wish-list-for-new-year/#

在以前的博客文章,你读过一些关于Q #背后的想法,它是如何开始存在,其发展在过去的一年。你读过关于量子计算,量子算法和你可以做什么,问#今天。随着今年即将结束,只有一件事要盖:下一步是什么?

这个博客是关于我们对未来的渴望和你如何能帮助完成。它包含了一些我们的愿景前进,我们希望能在评论中听到你的想法。

社区

我们关于Q #最令人兴奋的事情之一就是不断增长的社区周围。植根于量子力学原理,量子计算往往有空气不可接近的“门外汉”。然而,量子计算是建立在一个理想的量子系统的行为根据少数相当容易学习原则的概念。在线性代数,后天背景稍微有些坚持,和耐心的时候,你的头怎么包测量工作有可能获得深入的量子算法相当快!

当然,在这些原则的几个好的博客可以帮助。我们努力积极支持你在所提供的材料,帮助你开始探索量子算法的冒险,就像我们日益增长的量子实践。我们的开源库图书馆提供了大量各种各样的积木,用你利用量子追求权力。一个开源项目的主要好处是能够有足够的勇敢的人们探索量子所提供的可能性,分享你的工作。分享你的进步和帮助别人建立在你的成就!无论是在卡塔或图书馆的形式,我们欢迎任何大小我们的库的贡献。让我们知道我们如何可以帮助做出贡献更容易。

开发商之间的交换是软件开发的一个重要方面。它是无所不在的,在一个特定的工具和主题建设一个可持续发展的环境至关重要。值得庆幸的是,现代技术已使交流更容易比在第一计算机程序员开始自己的职业生涯。我们要充分利用互联网的力量,给一个声音和一对Q #和量子计算为世界各地的开发商相关话题的讨论平台。Q # dev的博客是这种努力的一部分。联系我们或在下面的评论,如果你有一个想法,一个博客或者希望听到更多关于某个主题的Q #相关。建立良好的反馈渠道始终是一个具有挑战性的工作,特别是像我们这样的小团队。我们希望这个地方成为一个知识交流源,一个地方你可以找到最新的新闻和你对他们的声音。

生长

这把我们带回到我们的Q #计划。我们已经建立了Q #使量子发展更容易和更方便。当然,也有一些其他的因素所起到的决定。例如,我们预计需要自动化在很大程度上是在今天做手工劳动,例如量子比特的布局和门的合成,还经常做以每个程序案例的基础上,有针对性的硬件。你最后一次担心如何纠错工作在硬件上执行的代码会是什么时候?随着量子比特是一个极为稀缺的资源,和长期的野心,利用量子计算解决计算最密集的任务,不能与当前的硬件解决方案,大型量子优化需要优先。我们选择了发展自己的语言,有什么样的信息完全的控制和灵活性表现如何,当它被编译为在使用过程中能够支持执行量子程序的模块化和可扩展的软件体系结构。但那是另一段故事了。重要的是,这些因素是如何设计和开发语言向前发展的关键因素。

一种编程语言不仅仅是一个方便的工具集,算法表达。它的形状,我们认为,对一个问题的原因的方法,我们如何构造它,把它分解成任务在生成解决方案时。一种编程语言,会对我们的现有方法的认识产生了巨大的影响,以及如何适应和结合我们的目的。尤其是当冒险进入新的领域。

我们的目标是建立一个共同的理解是我们努力完成,并进化Q #成所需的驱动编程进步的强大的语言。我们的目标是利用一种语言的设计者,社会知识编译的退伍军人,量子物理学家、算法和硬件专家,以及各种软件开发商的形状的一种新的计算架构。And we want you to be part of it.

Transparency

Since our 0.3 release at the beginning of November we have been eagerly working on not just the next release, but on defining and preparing the next steps in 2019. While we are in the middle of formulating our plans for the future, I want to give you a brief insight into some of our considerations.

As I am sure you have noticed, the support for data structures in Q# is minimal. While we do provide quite a few high-level language features for abstracting classical and quantum control flow, we intentionally omit some of the more object-oriented mechanisms such as classes. We anticipate remaining heavily focused on transformations that modify the quantum state, expressed as operations in Q#, as well as their characteristics and relations in the future. However, basic bundling of data and manipulations of such is of course an important aspect of many programs and we want to provide suitable mechanisms to express these in a way that allows to make abstractions, is convenient, and is resistant to coding errors. 用户定义的类型在当前设置有限的权力,除了增加类型安全。“黑箱方法”类型参数化目前限制其有用性;我们不提供一个动态的反射机制,它是不可能的应用运营商或其他类型的具体功能参数项的类型为每个调用单独解决。在这个意义上说,这些项目都是“黑盒子”,只能通过周围。我们要做许多繁重的工作尽可能的静态特别是因为量子器件的可调试性是一个巨大的挑战。有几种机制可以考虑减轻这些决定的后果。一方面,约束中使用的几种流行的语言的共同机制。在某种意义上,它们可以被视为“一个基于类型的属性的专业”。你也可以追求更严格的道路专业根据具体类型本身,事实上添加一个表格超载我们目前明确阻止使用。无论哪种方式,通过明确区分用户定义的类型在类型系统,我们对扩展他们的权力做出了第一步的元组。

如果你想听到更多关于可能的想法,问#,其好处和注意事项,或想分享一些自己的想法,在下面的评论!参与讨论,发表你的思考的问题:是什么让一个量子程序设计语言的“量子”,即如何使它特别适合于量子计算?

加入我们

我希望你和我们一起进入了一个新的推计算边界的参与我们的编码比赛年,贡献我们的开源库,评论或写博客,分享你的想法和经验!

如何对新的一年的决议你自己吗?让我们知道您的期望完成,我们如何能帮助你在问#量子编程实现你的新年决心!

Q#–一个新年愿望清单的更多相关文章

  1. 2017 Summary

    几门课 基础电路与电子学 知道了一些二极管三极管的基本基本很基本的那种物理知识吧,但是毕竟我是从电信转专业过来的,所以说我内心就是逃避模电这样的课的.上课基本没听,后面只是死命复习了一周,考的还可以. ...

  2. Django学习系列21:为每一个清单添加唯一URL

    现在让我们来解决我们真正的问题,即我们的设计只允许一个全局列表. 我将演示一个关键的TDD技术:如何使用一个渐进的.循序渐进的过程来适应现有的代码,这些过程将您从工作状态转移到工作状态.测试山羊,而不 ...

  3. 详解Office Add-in 清单文件

    作者:陈希章 发表于2017年12月8日 前言 我们都知道,一个Office Add-in,最主要是由两个部分组成的:清单文件(manifest)和真正要用来执行的网站. 清单文件其实是一个标准的XM ...

  4. 2017年末大总结(by一个软件开发实习生)

    时间本是一条连续不断的河流,我们却生造出了一些有头有尾的节点,不知道是不是为了增加一点仪式感呢. 今年最大的变化就是学会了java并找到一份了实习,很幸运能进入这个行业,做一份热爱的工作.从开始自学编 ...

  5. Java开发笔记(六十七)清单:ArrayList和LinkedList

    前面介绍了集合与映射两类容器,它们的共同特点是每个元素都是唯一的,并且采用二叉树方式的类型还自带有序性.然而这两个特点也存在弊端:其一,为啥内部元素必须是唯一的呢?像手机店卖出了两部Mate20,虽然 ...

  6. 用C++实现一个Quaternion类

    提要 四元素是游戏开发中经常使用的用于处理旋转的数学工具,以下就用C++来实现一个四元素类.參考Unity中四元素的接口. 假设没有看之前的 彻底搞懂四元数. 建议先看一下. 代码清单 Quatern ...

  7. AngularJs $q 承诺与延迟

    $q 一个帮助处理异步执行函数的服务.当他们做完处理时,使用它们的返回值(或异常). 受 Kris Kowa’s Q 的启发,这是一个实现promise/deferred对象的启用. $q的两种方式- ...

  8. 【开源一个小工具】一键将网页内容推送到Kindle

    最近工作上稍微闲点,这一周利用下班时间写了一个小工具,其实功能挺简单但也小折腾了会. 工具名称:Simple Send to Kindle Github地址:https://github.com/zh ...

  9. 程序员必备的代码审查(Code Review)清单【转载】

    在我们关于高效代码审查的博文中,我们建议使用一个检查清单.在代码审查中,检查清单是一个非常好的工具——它们保证了审查可以在你的团队中始终如一的进行.它们也是一种保证常见问题能够被发现并被解决的便利方式 ...

随机推荐

  1. git怎么合并远程分支

    一共就五步: 1.把代码clone到本地仓库 git clone https://github.com/573734817pc/shop.git 2.在本地创建dev分支并与远程dev分支对应 git ...

  2. C++11多线程编程--线程创建

    参考资料 adam1q84 我是一只C++小小鸟 Thread support library Book:<C++ Concurrency in Action> 线程的创建 线程的创建有多 ...

  3. Python Hacking Tools - Web Scraper

    Preparation: Python Libray in the following programming: 1. Requests Document: https://2.python-requ ...

  4. OSCP Learning Notes - WebApp Exploitation(5)

    Remote File Inclusion[RFI] Prepare: Download the DVWA from the following website and deploy it on yo ...

  5. Ethical Hacking - NETWORK PENETRATION TESTING(10)

    WPA Craking WPA was designed to address the issues in WEP and provide better encryption. The main is ...

  6. This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary lo的解决办法

    创建存储过程时,出错信息: ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA ...

  7. 记一次 Microsoft.Bcl.Async 使用经验

    起因: 由于公司项目使用场景存在很多的XP环境,导致使用.NET Framework版本不能大于4.0版本.最近开发新功能时:从nuget上下载一个开源dll(该dll 4.0 版本依赖 Micros ...

  8. 分布式ID生成服务,真的有必要搞一个

    目录 阐述背景 Leaf snowflake 模式介绍 Leaf segment 模式介绍 Leaf 改造支持RPC 阐述背景 不吹嘘,不夸张,项目中用到ID生成的场景确实挺多.比如业务要做幂等的时候 ...

  9. css中使用浮动的情况和清除浮动的方法

    1.使用浮动时出现的情况: (1)使块元素在一行显示 (2)使内嵌元素支持宽高 (3)不设置宽高的时候宽度由内容撑开 (4)换行不被解析(故使用行内元素的时候清除间隙的方法可以使用浮动) (5)元素添 ...

  10. 5万字长文:Stream和Lambda表达式最佳实践-附PDF下载

    目录 1. Streams简介 1.1 创建Stream 1.2 Streams多线程 1.3 Stream的基本操作 Matching Filtering Mapping FlatMap Reduc ...