5 ms·
One good thing about Android in this perspective is that many sub-components of it have their own processes (binary), especially around HAL, after Project Trebl
by flakiness 5y ago
One good thing about Android in this perspective is that many sub-components of it have their own processes (binary), especially around HAL, after Project Treble [1]. This means that you can rely on the process boundary as the language boundary to start small.
Also note that Android is more C++ than C. And C++-Rust integration is something Rust has already done in Firefox. The road is paved, at least partially. So I have high hope here in long term.
[1] https://android-developers.googleblog.com/2018/05/faster-adoption-with-project-treble.html https://android-developers.googleblog.com/2018/05/faster-ado...
- bsder 5y ago> And C++-Rust integration is something Rust has already done in Firefox. I don't think this is really true. The simple fact that Rust can't overload functions causes significant grief in a C++/Rust interface, for example. Personally, I now see C++ as an evolutionary dead end--yes, it's going to continue to exist for a bit until we get a language that is ready for game programmers can use. After that, the fall of C++ will be fast. This is especially true since we are now back to lots of projects side-stepping the C++ standard libraries. If you're going to do that, why use C++ in the first place? The simplicity of C is much better suited to being a lingua franca, and much better languages are appearing that can finally be the "Successor to C".
- pjmlp 5y agoIf only, https://www.khronos.org/sycl/ https://www.khronos.org/sycl/ https://developer.nvidia.com/cuda-zone https://developer.nvidia.com/cuda-zone https://devblogs.microsoft.com/directx/ https://devblogs.microsoft.com/directx/ https://developer.apple.com/metal/ https://developer.apple.com/metal/ https://os.mbed.com/ https://os.mbed.com/ https://www.arduino.cc/ https://www.arduino.cc/ https://www.unrealengine.com/en-US/ https://www.unrealengine.com/en-US/ https://www.crytek.com/cryengine https://www.crytek.com/cryengine https://www.misra.org.uk/Activities/MISRAC/tabid/171/Default.aspx https://www.misra.org.uk/Activities/MISRAC/tabid/171/Default... https://www.snsystems.com/ https://www.snsystems.com/ https://www.codeplay.com/ https://www.codeplay.com/ https://docs.microsoft.com/en-us/windows/apps/winui/ https://docs.microsoft.com/en-us/windows/apps/winui/ https://www.qt.io/ https://www.qt.io/ This is the kind of tooling and ecosystems that Rust still needs to build, besides a plain compiler + cargo.