I chose rust after endless annoyances in a 100kloc go program due to piss poor type safety and nil pointer checks, lack of meaningful containers, and working around GC when working with C libs. I didn't think I needed any of those things until it was too late. Any project of meaningful size will eventually need everything go avoids.