4 ms·
You forget a few points: * Games require portability. Not many platforms will have a rust compiler (Not to mention that current C++ compilers are very mature a
by nimrody 13y ago
You forget a few points:
* Games require portability. Not many platforms will have a rust compiler (Not to mention that current C++ compilers are very mature and highly optimizing).
* Current C++ libraries. They are probably heavily templates-based and will be difficult to port.
- dbaupp 13y ago> * Games require portability. Not many platforms will have a rust compiler (Not to mention that current C++ compilers are very mature and highly optimizing). Rust uses LLVM as the backend, so any platform that Clang supports, Rust can too. (And also, it has the optimisations built in.) In fact, there's already support in the compiler for x86, x86-64, arm, and mips. (I'm not sure if mips actually works, but arm definitely does.)
- stormbrew 13y agoReally the portability that matters in this case (games) is probably Windows, which llvm and clang do not target very well at this point.
- pcwalton 13y agoWe've been focused on first class Windows support since day one. The only major issue for LLVM itself that I'm aware of is the lack of PDB debug info, which is less of a problem for Rust because the system debuggers don't debug Rust in the first place. Most of the clang problems for Windows that I'm aware of relate to all the MSVC extensions in windows.h, which is not a problem for Rust as it doesn't use system header files.
- krichman 13y agoI don't know if you'll see this, but I've been wanting to contribute to Rust for a while now. I've checked through the Github issues, but it's not really clear to me what I should do if there's one I think I can do. How should I approach it?
- pcwalton 13y agoThanks! There are "E-easy" and "A-an-interesting-project" tags on GitHub that you can check out if you're interested.
- lucian1900 13y agoI would think the harder platforms are the consoles: they often come with their own compilers that only support C and C++.
- masklinn 13y agoWasn't that in part due to PPC or custom silicon? The 360 and PS4 are now on x86-64, it should be possible for them to use a more sensible toolchain. also, even before that there were people using "non-standard" toochains e.g. http://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp http://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp
- lucian1900 13y agoThe PS3 and Xbox360 won't go away in the next 5 years. The issue is not so much PPC (which should get support anyway), but various other silly things, like needing to rely on certain interactions between the compiler and runtime library. This is not a huge issue, but any extra bump will deter people from trying. And indeed it's possible to have an alternate toolchain, but lots of work that is best avoided most of the time.