銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

Quantum Development Kit が 0.3に更新されました

こちらのブログで案内されています。

cloudblogs.microsoft.com

今回は大きく3つの更新があります。

化学計算向けライブラリの追加

ドキュメントも追加されています。 docs.microsoft.com

Q# 開発環境の改善

Visual Studio向け、Visual Studio Code向けのQ#拡張が更新されています。それぞれアップデートする必要があります。 Q#コードを編集しても自動コンパイルしてくれなかったり(Live Compile)、コンパイルエラーのメッセージが不親切だったりしたのですが、その辺りが改善されました。また、定義へ移動や、Operation定義のポップアップ表示などが追加されています。

f:id:tanaka733:20181031145816p:plain

Q# 言語の仕様変更

Q# 言語としても仕様変更が入っています。改善として追加された項目が多いですが、破壊的変更となっている点もあるので注意が必要です。先程の開発環境の改善含めこちらに詳細にまとまっています。

QDK 0.3 Language Review and Migration Guide | Microsoft Docs

ざっと見たところ、配列要素の区切りが;から,に変更になるのが一番多く変更の必要がありそうです。以前のバージョンのプロジェクトを新しいバージョンに更新するためには、そのドキュメントの最後にmigrationの手順および自動化のPowerShellスクリプトが提供されています。

QDK 0.3 Language Review and Migration Guide | Microsoft Docs

Q# Development KitはC#の.NET Core ConsoleプロジェクトにNuGetパッケージの形式で参照として追加されています。そのため、バージョンアップするためには参照しているNuGetパッケージのバージョンを上げる必要があります。また、コードの変更が必要な点については、新しいバージョンのコンパイラーが変更する機能を提供しているため、dotnet msbuild /t:qsharpformatを実行すると変更されるとあります。スクリプトはPowerShell Coreにも対応しているので、LinuxやmacOSでもPowerShell Coreをインストールすれば利用可能ですが、手動でやることもできます。

文法の変更については、このブログでも解説したいと思います。