从应用程序程序员的角度来看 - 函数式编程可以用于对量子计算机进行编程吗?

From an application programmer's perspective - Can Functional Programming be used to program Quantum Computers?

我不是函数式编程 (FP) 方面的专家。其实我才刚开始学

所以,真正的问题是:因为 FP 是从数学派生出来的,而不是从 von 派生出来的。 Neumann machine,这个编程style/paradigm可以用来给量子计算机编程吗?这更多是从应用程序员的角度来看,因为低级机器指令可能完全不同。

没有。函数式程序仍然执行 class 逻辑计算。我们目前定义的功能风格与叠加、量子力学门或干涉没有任何相似之处。虽然可以将高阶函数和第一个 class 函数的一般概念传输到量子计算领域(人们现在正在研究它),就像有量子图灵机一样,据我所知可以看出结果不同于 classical 函数式编程,就像量子算法不同于 classical 算法一样。例如,在 QML 中删除 if ... then ... else ... 以支持类似的条件,其中条件是 qbit 并且结果是 thenelse 值。

现在,当然,量子计算机是图灵完备的,理论上可以执行任何 classical 算法。但是你到底为什么要那样做?我们已经拥有 class 逻辑计算机,并且它们在执行 class 逻辑计算时(并且将永远) 更有效。对量子计算机进行编程的唯一原因是使其 运行 成为一种算法,以一种非平凡的方式利用量子效应的怪异性。甚至要表达这一点,无论您工作的抽象级别如何,都需要一种非常不同的语言。