game development always missing in that kind of articles, it is an application, but also requires some element of system programming, so what to do ? a good language imo, is one that has the ability to jump back and forth with these different aspect of programming, C# got it right, except maybe for the DSL part, kotlin native can become a good choice too in the future
and to add on "Systems vs applications", i'd say: an Application needs to know the system it runs in, or else it'll run into problems (performance)