Q Sharp
- Правильна назва цієї сторінки — Q#, але її не можна використовувати через технічні обмеження.
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
для ізоляції коду - Усі інструкції закінчуються символом
;
- Фігурні дужки використовуються для межі видимості інструкцій
- Однорядкові коментарі робляться за допомогою
//
- Типи даних, такі як
int
double
string
таbool.
- Змінні декларуються за допомогою
let
абоmutable
- Функції декларуються за допомогою
operation
абоfunction
- Відсутні багаторядкові коментарі
- ↑ The future is quantum: Microsoft releases free preview of Quantum Development Kit — 2017.
- ↑ Release 99045 — 2019.
- ↑ https://api.github.com/repos/Microsoft/Quantum
- ↑ QuantumWriter. Intent and product brand in a unique string of 43-59 chars including spaces. docs.microsoft.com (амер.). Архів оригіналу за 2 липня 2018. Процитовано 11 грудня 2017.
- ↑ Announcing the Microsoft Quantum Development Kit (амер.). Архів оригіналу за 11 грудня 2017. Процитовано 11 грудня 2017.
- ↑ Microsoft announces quantum computing programming language (амер.). Архів оригіналу за 14 грудня 2017. Процитовано 14 грудня 2017.
- ↑ QuantumWriter. Setting up the Q# development environment. docs.microsoft.com (амер.). Архів оригіналу за 14 грудня 2017. Процитовано 14 грудня 2017.
![]() |
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |