I don't see how this solves anything, Nim's backend is C, which means it should suffer from the same pitfalls. They probably clean it up and eliminate UB, but it should still exist.
Oh please please no! Nim is almost impossible to debug at a low level and you have no fine-grained control over its performance or behavior. It's also far less well understood than C, which is more boring and the subject of decades of conservative development. I'm also not sure what kind of support nim has for freestanding programs.
I have love-hate relationship with Nim. It's the best C alternative I can find for our high performance supercomputing needs, yet it breaks my code [0] (yes, it's broken with 0.16.0 now) every single new release for the past year.
Nim is not memory safe and doesn't technically claim to be. What they claim is to provide memory safe features, but then so does C++ and a lot of other languages.
reply