【.NET】Polyglot Notebooksで対話型実行環境(REPL)を構築する

Polyglot Notebooksで対話型実行環境(REPL)を構築する方法です。

Polyglot Notebooksとは?

Polyglot NotebooksはVS Code拡張機能で、これを使うとC#の対話型実行環境を作れます。
対話型実行環境とは下図のように、コードを書いてすぐ結果が得られる環境のことです。Google Colabみたいなやつです。

marketplace.visualstudio.com

マークダウンでドキュメントもかけるため、学習教材やライブラリの動作確認などに有用です。

裏では.NET Interactive という仕組みが使われています。

本記事ではこれの使い方についてまとめます。

インストール〜ファイル作成まで

Polyglob NotebooksはVS Code拡張機能なので、インストールしていない場合にはまずVS Codeをインストールします(詳細割愛)。

次にVS CodeのExtensionsメニューからPolyglot Notebooks を検索してインストールします。

インストール

上部のサーチフィールド(またはコマンドパレット)に以下のように入力して新しいファイルを作成します。

>Polyglot Notebook: Create new blank notebook

下図のエラーが出ました。.NET9が必要そうなのでインストールします(詳細は割愛)。

.NET9をインストール

.NET9をインストールしたら、VS Codeを再起動し、再び以下のコマンドを入力します。

>Polyglot Notebook: Create new blank notebook

すると下図のようにdibかipynbのどちらかの形式を選択させられるので、dibを選択します。

dib

次に言語選択画面が出るのでC#を選択します。

C#

dibファイルが作成できました。

作成できた

書いてみる&実行してみる

それでは試しに何か書いていきます。上部のCodeボタンやMarkdownボタンから、それぞれコードのセルとマークダウンのセルを追加できます。

セル追加ボタン

マークダウンは記述してから Ctrl + Enter でプレビュー表示になり、ダブルクリックするとまた編集モードになります。
コードはセルの左側の実行ボタンを押すことで実行され、出力がその直下のセルに表示されます。

出力を表示

また、対話型環境特有の仕様として、「コードセルの中の最後の式の評価結果がそのセルの出力として自動的に表示」されます。

つまり以下のような記述が可能です。

出力自動表示

基本的な使い方は以上です。

参考

marketplace.visualstudio.com