C#を対話形式で実行!C#用REPL IDEのCShellがとても便利そう

CShellというオープンソースC#のREPL環境が便利そうです。
CShellと言ってもcshの事ではないです。


PythonRubyといったLL使っていると対話環境でプログラムの動きとか確認できるREPLがとても便利だと思ってました。


C#の場合は少し動作を確認するにも、いちいちVS立ち上げて、ビルドしてと結構面倒です。そんな時には、すぐ立ち上げてガシガシとコードを打っていけるPowerShellで.Netライブラリの動き確認したりすることはなんかが良くありますが、やはりC#PowerShellは違うので苦肉の策といった感じです。

そんな人にはとても良いソフトウェアかもしれません。




ダウンロードはこちらから。
Releases · lukebuehler/CShell · GitHub



ダウンロードしたZIPファイルを展開してEXEを実行することでプログラムが立ち上がります。

立ち上げた画面は上記の通り。画面上側はタブ形式のエディタでC#のコードを書くことができます。下側は対話形式でプログラム(コマンド?)を打っていけます。PowerShellIDEに見た目や操作性は近いです。


変数をタイプしてEnterを打つと、変数の中身が表示されます。


インテリセンスも動きます。


usingで指定すれば普通のC#のようにコーディングできますので、Linqなんかも利用できます。


クラスを定義したい場合は、画面上部のエディタにクラスのコードを書いて、
書いたコード選択してAlt+Enterを押します。




以下のstaticメソッドがデフォルトで使えるようになっています。

Describe (object); - Describes the object's type
ShowUsing (); - Show active using declarations
ShowVars (); - Shows defined local variables
Time (() => { }); - Times the specified code
print (obj); - Shorthand for Console.WriteLine
clear; - Clear all the text in the REPL
help; - This help text


PowerShellIDE近い使い心地で、とても使いやすいです。
ちょっと使い続けてみようと思います。