← Back to context

Comment by surajrmal

2 days ago

The reason folks still use c/c++ is because of ecosystem. Chances are you have a lot of code you depend on and don't have straightforward ways to port it (and all the transitive deps). Especially in the case of larger enterprise software where there are 10s of millions of lines keeping you entrenched. Foundational things like your threading model, async executor, etc can make it difficult. If you're operating in a micro service environment and your core does are both minimal and ported, the journey becomes much more tractable.

I assumed new projects but I just realised that I didn’t write it.

But still disagree: we have cbindgen.

  • cbindgen is woefully inadequate. Have you tried to use cbindgen to make interop between complex c++ work with rust? You will end up writing a significant amount of shim code manually, on both sides. Newer efforts like crubit seem promising, but still have some challenging edge cases.