| Q# | |
|---|---|
| Парадигма | функційне програмування і імперативне програмування |
| Дата появи | 11 грудня2017[1] |
| Творці | Microsoft Research |
| Розробник | Microsoft |
| Останній реліз | 99045 (11 листопада2019)[2] |
| Система типізації | статична і строга типізація |
| Під впливом від | C# |
| Платформа | Common Language Infrastructured |
| Ліцензія | MIT[3] |
| Звичайні розширення файлів | .qs |
| Репозиторій вихідного коду | github.com/Microsoft/Quantum |
| Вебсайт | docs.microsoft.com/en-us/quantum/quantum-qr-intro |
Q# (читається як Q sharp) — цепредметно-орієнтована мова програмування, яка застосовується для запису квантових алгоритмів.[4] Вона уперше оприлюднена компанієюMicrosoft як частина Набору інструментів для квантової розробки (Quantum Development Kit).[5]
Під час конференції Ignite, яка відбулася 26 вересня 2017 року, Microsoft оголосила, що вона планує випустити нову мову програмування, спеціалізовану для використання у квантових компʼютерах.[6] 11 грудня 2017 року Microsoft випустила Q# у складі Quantum Development Kit.
Q# є доступним лише у вигляді окремо звантажуваного розширення до Visual Studio.[7] Набір Quantum Development Kit постачається у наборі з квантовим симулятором, який здатен виконувати програми, написані на Q#. Для активізації ж квантового симулятора треба використовувати «оболонкову» програму на будь-якій іншіймові програмування сімейства .NET .
Основною можливістю Q# є здатність створюватикубіти і використовувати їх в алгоритмах. Як наслідок, однією з найцікавіших можливостей мови Q# є здатністьсплутувати та створюватисуперпозицію кубітів за допомогоювентилів контрольованого заперечення та вентилів Адамара, відповідно.
У мові Q# кубіти виконані у вигляді топологічних кубітів.
Квантовий симулятор, який постачається у Quantum Development Kit, здатний створювати до 32 кубітів на локальній машині або 40 кубітів наAzure.
Q# синтаксично схожий наC#, щоправда має деякі суттєві відмінності.
namespace для ізоляції коду;//intdoublestring таbool.let абоmutableoperation абоfunction| Це незавершена стаття промови програмування. Ви можетедопомогти проєкту,виправивши або дописавши її. |