4 ms·
Why didn't they re-write it in C#?
by BeowulfCluster 11y ago
Why didn't they re-write it in C#?
- sheepdestroyer 11y agoThey already had a C++ port for the mobile version which is now becoming the main branch.
- varjag 11y agoProbably the same reason: (lack of) performance.
- BeowulfCluster 11y agoC# is _much more performant_ than Java.
- namelezz 11y agoLink please.
- deleted 11y ago[deleted]
- alkonaut 11y agoThat's really hard to claim. Both are languages, and don't have inherent performance characteristics, C# can even be compiled to native for some targets. There are some aspects of C# (such as value types) that can give an advantage of idiomatic C# over idiomatic Java, but for anything performance sensitive you aren't going to write idiomatic code anyway, you'll be writing pretty convoluted code with SoA instead of AoS and so on. As for the respective VM:s, the CLR vs the JVM, the performance differences are pretty small. You wouldn't rewrite from Java to C# for performance.
- hyperpape 11y agoMy understanding is that C# made a number of good decisions surrounding structs, but that the JVM has had a huge amount of engineering work, and the HotSpot JIT & GC options are better performing. Can you point to any compelling evidence that either language is faster?
- bitmapbrother 11y ago>_much more performant_ LOL. Benchmarks and citation please.
- Mikeb85 11y agoExcept is isn't. Not even close. Maybe as fast as Java 6...
- namelezz 11y ago.Net is still not fully cross-platform.
- pjmlp 11y agoMost likely because C and C++ are still the languages of professional game devs. It always take a few generations to move languages in game development. Assembly -> C & Pascal & Basic dialects -> C & C++ -> maybe C#, Rust, D....