Comment by CharlieDigital
12 hours ago
Flip side: LLMs have to be very explicitly told to code in "modern" .NET and C# due to lack of representation in the training set.
Case in point: extension members from C# 14 is one that LLMs commonly stumble on and requires an explicit example. It still sometimes says that this is not valid syntax.
extension(SomeType instance)
{
public OtherType DoSomething() { ... }
}
Agents really struggle on this one for some reason.
Even older releases have a few that I notice LLMs making mistakes on like use of `System.Threading.Lock` over `Object` when locking.
The dotnet team provides some agent plugins which solve some of these issues. I expect unions in dotnet 11 will need some skill updates too.
[flagged]
With Claude I never had that problem. However Claude does not use the pattern by default