iX Special 2021
S. 102
Quantenprogrammierung
Generische Sprachen

Die Hochsprache Silq

Seidengewand

Dr. Florian Neukart, Sylvester Tremmel

Silq soll als höhere Programmiersprache für Quantencomputer von deren physikalischen Eigenheiten abstrahieren. In der Tat bietet die Sprache beeindruckende Features, die das Programmieren erleichtern.

Wer derzeit Quantencomputer programmiert, spricht häufig einzelne Qubits direkt an. Das erinnert an die Frühzeit herkömmlicher Computer und hat wenig mit modernen Hochsprachen zu tun. Die meisten Programmiersprachen für Quantencomputer wie Quipper, Q# oder QASM sind eher Low-Level-Sprachen und stellen nur bedingt eine beschreibende Sicht auf Quantenalgorithmen zur Verfügung. Toolkits wie Qiskit, Forest und Cirq nutzen zwar High-Level-Sprachen wie Python oder MATLAB, die aber wurden für klassische Rechner entwickelt. Die in Quantencomputern zentralen Quanteneffekte sind in diesen Sprachen Fremdkörper.

Deshalb hat die ETH Zürich die Programmiersprache Silq entwickelt, mit der sich Low-Level-Manipulationen von Qubits abstrahieren lassen. Statt etwa Quantenzustände als Vektoren darzustellen, definiert Silq passende Typen. Für sie bietet Silq die jeweils zulässigen Operatoren, sodass Programmiererinnen Quantenzustände nicht erst umständlich mit Matrixoperationen und Tensorprodukten manipulieren müssen.

Kommentieren