Programmieren für Quantencomputer: Code-Katas für die Programmiersprache Q#
Q# ist Microsofts domänenspezifische Sprache für das Thema Quantencomputing. Mehrere Code-Katas sollen beim Einstieg helfen.
![Microsoft offeriert Code-Katas für Programmiersprache Q#](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/4/7/0/2/4/8/ur-dd4a9244f5797dde.jpeg)
- Alexander Neumann
Für Entwickler, die sich für das Thema Quantencomputer interessieren und Microsofts hierfür vorgesehene Programmiersprache Q# erlernen möchten, hat das Unternehmen die sogenannten Quantum Katas entworfen. Hierbei handelt es sich um ein Open-Source-Projekt, das eine Reihe von Programmierübungen (sogenannte Code-Katas) enthält, auf Basis derer man offenbar unmittelbares Feedback erhält.
Jede Kata bietet Aufgaben zu einem bestimmten Quantencomputing-Thema, von einfachen bis hin zu anspruchsvollen. Für jede Aufgabe ist Code einzugeben. Für die erste ist möglicherweise nur eine Zeile erforderlich und für die letzte dann umfangreicher Code. Ein Test-Framework validiert und bewertet schließlich die Lösungen.
Mehr Informationen zu den Quantum Katas finden sich in der Ankündigung. Ansonsten finden sich die Katas selbst auf Microsofts GitHub-Account.
Q# – Microsofts Programmiersprache fürs Quantencomputing
Die domänenspezifische Programmiersprache Q# (gesprochen Q sharp) bezieht sich in der Syntax auf Microsofts Sprachen C# und F#, weiß aber auch mit einigen Besonderheiten aufzuwarten. Ein Hauptmerkmal von Q# ist die Fähigkeit, Qubits für Algorithmen zu erstellen und zu verwenden. Der englische Wikipedia-Artikel zu Q# listet die wichtigsten Ähnlichkeiten und Unterschiede auf.
Die Sprache hatte Microsoft Ende des letzten Jahres im Zuge des Quantum Development Kit vorgestellt. Mit der Entwicklungsumgebung will Microsoft Entwickler ansprechen, die sich nicht in die komplexen Tiefen der Quantenphysik einarbeiten wollen, um Quantencomputer programmieren zu können. Das Quantum Development Kit fügt sich dazu in Visual Studio ein. (ane)