It's pretty obviously a failed experiment. Why keep repeating it? Try again in another 3 months.
The answer is probably that the Copilot team is using the rest of the engineering organization as testers. Great for the Copilot team, frustrating for everyone else.
Do you honestly not see a problem with those two statements in such close proximity? Is it finished or is it released? The former is supposed to be a prerequisite for the latter.
It's unfinished and it's in the public's hands. I don't see these as opposing ideas.
We can debate whether they should have called this an experiment or an alpha or beta or whatever, but that's a different discussion.
The fact that people are using it currently does not make it a failure. When MS shuts it down, or Copilot is wildly unprofitable for multiple quarters, team behind it quits, etc, etc, then we can determine whether it has failed or not.
But if they continue to have paying customers and users are finding some benefits over not having Copilot, and MS continues to improve it (doesn't let it rot), then you'd have to provide some evidence of its failure that isn't "look at Copilot being stupid sometimes". Especially when stupidity is expected of it.
I wouldn't necessarily call that just an experiment if the same requests aren't being fixed without copilot and the ai changes could get merged.
I would say the copilot system isn't really there yet for these kinds of changes, you don't have to run experiments on a language framework to figure that out.
NPE itself isn’t likely to be exploitable, no, but what I had in mind was more along the lines of code with logic errors handling rare cases where something is null. There’s a lot of tooling designed to catch things like that but the worst code bases tend not to use them because they’d need a lot of cleanup.
Looks like the author is explicitly excluding "Error", "StdDev", "Median", "RatioSD" from the ouput. It's in the setup[0]. I'm guessing the author omitted them for brevity.
There is VS Code, which is not a version of VS, is free, and has this debugger.
There is also VS Community, which is a free version of VS, has this debugger, but has fairly strict licensing limitations (e.g. it can't be used in corporations).
Note that Mono, the framework, is indeed dying. But Mono, the runtime, is now part of .Net and it's an alternative to CoreCLR, used for things like Xamarin/MAUI and Blazor.
Though most of the time, you don't need to know any of this, you just use .Net and it works on Windows, Linux, Android, Apple and in the browser.
Exceptions are here to stay though. I don't see how you could retrofit something like Rust's Result on top of .Net. (Also, .Net has a pattern that's an alternative to exceptions: `bool TrySomething(out T result)`. But it's quite limited, in several ways.)
Are you suggesting a Result type and Exceptions are mutually exclusive? Scala bolted `Either` (a Result type) on top of Java, and it worked exceptionally well in my experience.