📌

C# というか .NET の REPL として PowerShell が使える話

2024/12/29に公開

C# はコンパイル言語ではありますが、REPL 環境もあります。REPL というのは「Read-Eval-Print Loop」の略である用語で、すなわち、ターミナル上でその言語の構文や式を入力すると、その場で評価・実行されて結果が表示され、次の入力待ちに戻る、というアレです。

実のところ、自分はあまりその方面は詳しくないのですが、例えば Windows 上で Visual Studio を使っている場合、「C# インタラクティブ」というウィンドウがあり、そこで C# コードを実行することが可能です。

また、界隈では、LINQPad というツールも有名だったりします。

ですが他にもお手軽な REPL 環境として PowerShell があります。

PowerShell 上では、構文こそ C# ではなくて、PowerShell の構文である必要はあるものの、.NET の基本ライブラリを呼び出すことが可能です。

例えば C# での DateTime.Parse を PowerShell 上で実行するのはこんな感じ。

PS>[DateTime]::Parse("2024-12-29")
Sunday, December 29, 2024 12:00:00 AM
PS> _

PowerShell は Windows だけでなく各種 Linux ディストリビューションでも動作します。

https://learn.microsoft.com/ja-jp/powershell/scripting/install/installing-powershell-on-linux?view=powershell-7.4

お手軽 .NET REPL としての利用も、PowerShell の活用方法のひとつとしておすすめできます。

Discussion