Other than Indie game development, C# is also used for in house tool development at large studios.

I have two questions -:

1) Is microsoft planning to release a native C# compiler sharing the backend code generator with the C++ compiler? http://www.compilerjobs.com/db/jobs_view.php?editid1=648

2) If microsoft IS planning a native C# compiler, then can C# replace C++ as the industry standard in AAA vedio games?

  • 3
    \$\begingroup\$ Welcome to gamedev.stackexchange. Please check the FAQ, particularly relating to the criteria we look for in questions (practical, answerable, based on actual problems you face, etc). Making predictions about the future and guessing about a third-party's motivations are pretty thoroughly outside our scope. \$\endgroup\$ Nov 29 '12 at 10:55
  • \$\begingroup\$ Who knows what Microsoft is planning? Ask them directly, maybe they'll dare to give you an answer. \$\endgroup\$ Nov 29 '12 at 11:04
  • \$\begingroup\$ I will sare to ask, but I don't know the means ;( \$\endgroup\$
    – user73830
    Nov 29 '12 at 11:08

1) Who knows?

2) Even if they do release such a thing (unlikely), it still would generate far less efficient code than pure C++, because it includes many safeguards, generalizations, etc. you can't just optimize out, because code might depend on them. Also you most likely wouldn't gain any significant performance boost, because what you describe is essentially what is done at runtime anyway (to some extend).


1) Regardless of whether or not Microsoft is planning to, Mono already has an "Ahead of Time" (AOT) compilation option, converting C# to native code at compile time. Both Mono and Microsoft's implementation will JIT-compile C# to native code at runtime as well.

2) C# is already being used in AAA titles such as The Sims 3, including on consoles. C# is unlikely to outright "replace" C++: There's no practical reason to throw out existing codebases if they work well to rewrite them in C#. There's still plenty of C floating around which hasn't been replaced with C++ to this day, and a lot of C with a minor splattering of C++ as existing code has been updated and modernized as needed, rather than replaced wholesale.

tl;dr: C# is viable to use today in AAA titles, but languages replace each other at a glacial pace which is quite difficult to predict or speculate on in a worthwhile manner.

If you're interested in mono or ahead-of-time compilation, I recommended reading: http://tirania.org/slides/AltDevConf-2012-Mono.pdf

  • \$\begingroup\$ Is sims 3 completely implimented in mono/C# ? Or, The scripting engine and logic in C# and the renderer and some physics in C++? \$\endgroup\$
    – user73830
    Nov 29 '12 at 15:54
  • \$\begingroup\$ I'm not sure what the exact breakdown is, but those slides break it down as: – C/C++ engine – C# scriping/AI – C# high-level \$\endgroup\$ Nov 30 '12 at 2:24

Not the answer you're looking for? Browse other questions tagged or ask your own question.