9 ms·
C#/.NET are very well-represented in LLM data - from enterprise back-end code to games. A language to use for sure.
by dude250711 16d ago
C#/.NET are very well-represented in LLM data - from enterprise back-end code to games. A language to use for sure.
- CharlieDigital 16d agoFlip 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.
- merb 16d agoWith Claude I never had that problem. However Claude does not use the pattern by default
- oldmanhorton 16d agoThe dotnet team provides some agent plugins which solve some of these issues. I expect unions in dotnet 11 will need some skill updates too.
- qingcharles 16d ago[flagged]
- mexicocitinluez 16d agoI wonder if any of those work alongside Github Copilot (the autocomplete not actual agent). Because at this point I would do anything if I could get Github Copilot to understand the new language features and stop trying to constantly revert code. The one specific thing I'm constantly having to deny is Copilot seeing this: List<string> items = []; into this: List<string> items = new List<string>();
- pjmlp 16d agoFor me it hardly matters, given that so many enterprise .NET projects are still stuck in Framework, including some from Microsoft themselves.
- sander1095 15d agoI am not noticing this. Does this by default for me
- bob1029 16d agoBuildings games in Unity feels like magic with frontier reasoning models. Assuming you are competent with scene work and the various art pipelines, the rest of the problem is significantly easier now. I've been using the Unity CLI to run arbitrary C# code against Unity 6 scenes without requiring domain reloads. It uses Roslyn to compile the snippet in a special Unity editor component instead of running the normal compilation pipeline. The implications for a reasoning model are significant. Domain reloads in my projects can take 10-20 seconds. Compound across 5-10 tool calls and the difference adds up very quickly.
- intrasight 16d ago>special Unity editor component I'd be interested in hearing more.
- bob1029 16d agohttps://docs.unity.com/en-us/unity-production-pipeline/local-tools-cli/unity-pipeline-package https://docs.unity.com/en-us/unity-production-pipeline/local...