Windows PowerShell では、以下の理由から、既存の言語ではなく独自の言語を使用しています。
-
Windows PowerShell では、Microsoft .NET Framework オブジェクトを管理するための言語が必要である。
-
コマンドレットを使用するための一貫した環境を言語で提供する必要がある。
-
単純なタスクを複雑にすることなく、複雑なタスクを言語でサポートする必要がある。
-
.NET Framework プログラミングで使用されている C# などの上位レベル言語との一貫性を維持できる言語が必要である。