¿El lenguaje Python necesita cambiar para reflejar la computación cuántica?

Inspeccionar el estado de una computadora cuántica mientras se ejecuta el algoritmo es físicamente imposible. El estado cuántico completo es físicamente inaccesible . Para agregar insulto a la lesión, incluso obtener la información parcial que puede obtener hace que el estado colapse efectivamente, evitando que el programa continúe normalmente.

Lo que intento decir es que nunca se usará un lenguaje de tipo dinámico para programar computadoras cuánticas. No puede realizar una prueba unitaria, no puede imprimir-depurar, no puede usar un depurador interactivo. No puedes REPLICAR. Las únicas cosas que hacen que los lenguajes de tipo dinámico sean viables (e incluso agradables), no se pueden usar.

Necesita un lenguaje con el sistema de tipo estático más fuerte que el dinero puede comprar. Haskell, uno de los lenguajes con los sistemas de tipo estático más avanzados que existen, es considerado inadecuado por las personas que programan computadoras cuánticas; probablemente preferirían escribir Agda o Idris o algo así. Comparado con eso, Python es una broma.

No me malinterpreten, es uno de mis idiomas favoritos, uno de mis 3 idiomas principales, pero las computadoras cuánticas solo plantean desafíos únicos que requieren prácticamente lo contrario de lo que Python nos ofrece.

Las computadoras cuánticas no están programadas con lenguajes de programación convencionales. Requieren un tipo de programación completamente diferente, completamente diferente a cualquiera de los lenguajes basados ​​en Turing Machine. Especialmente los imperativos / procesales como Python.

Hay algo de trabajo en lenguajes de programación Quantum como QCL, que tienen un parecido muy vago con lenguajes funcionales como Haskell … aunque tienen el mismo parecido con lenguajes de hardware como Verilog.

Algún día, las operaciones cuánticas se pueden empaquetar como bibliotecas que se pueden conectar a Python o Java o cualquier otro lenguaje de programación convencional: “Ve a resolver este problema 3SAT” o “Ve a factorizar este número primo grande”. El lenguaje convencional llevará a cabo partes de la operación tradicionalmente informáticas: lea este archivo, muestre ese mensaje y envíe un paquete allí.

Es concebible que lenguajes matemáticos como R, o paquetes como NumPy, se reconciban en torno a tener operaciones cuánticas disponibles. Pero las cosas cuánticas reales se realizarán en un tipo de lenguaje completamente diferente.