1. Replace PowerShell with a .Net interpreter so you can "just run" a .cs_exe file or whatever. No one wants to learn/deal with yet another throwaway proprietary scripting language.
2. Replace all the PowerShell cmdlet garbage with .Net libraries. You'd also be able to then trivially automate any scripting from existing .Net programs/tests.
3. Have a JavaScript -> .Net compiler so people don't have to deal with C# or VB.Net if they don't want to.
Scripts look something like (C# in this case):
using Microsoft.Scripting
void Main()
{
SQLServer.Configure(<SOME JSON>);
var result = IIS.Start("MyWebPage");
if (!Installed(<some windows package>))
{
File.Install()
}
if (!UserExists(server, user)) {
CreateUser(user)
}
}
You can't do all of this today (at least not easily or without installing many extraneous or 3rd part libs which create deployment headaches).
Microsoft has had a JavaScript compiler for a while (JScript.NET). I don't think it gets much use. They also had a Java compiler.
PowerShell is far better for scripting than C#. C# is terribly verbose and lacks scripting-ish stuff like string interpolation. I'm not sure it even had dynamic when PowerShell was made.
It is pretty dumb that C# still hasn't shipped a proper REPL or script runtime though.
JScript.net has never been a first-class citizen, and Microsoft never really made an effort to make it viable in all of the domains C# is. JScript feels like an attempt to embrace/extend JavaScript that never took hold.
The problem is that rather than adding libraries to improve .Net for scripting-ish stuff like string interpolation, you have to deal with an entirely different platform that shares little with the command line, and little with .Net.
1. Replace PowerShell with a .Net interpreter so you can "just run" a .cs_exe file or whatever. No one wants to learn/deal with yet another throwaway proprietary scripting language.
2. Replace all the PowerShell cmdlet garbage with .Net libraries. You'd also be able to then trivially automate any scripting from existing .Net programs/tests.
3. Have a JavaScript -> .Net compiler so people don't have to deal with C# or VB.Net if they don't want to.
Scripts look something like (C# in this case):
You can't do all of this today (at least not easily or without installing many extraneous or 3rd part libs which create deployment headaches).EDIT: for clarity.