Задача просто чуть ли не самая неудачная для стандартных аллокаторов.
А так у меня сейчас в проекте на расте ручной работы с памятью нет, полет нормальный. Но аллокаций на куче у меня в принципе нет в горячей части приложения.
Есть места, где я бы как раз воспользовался бы кастомными аллокаторами и писал бы с иммутабельными структурами, но пока их нет, живу с мутабельными.
Но поскольку никакого исследования удачности/неудачности задач для разных аллокаторов нет - трудно понять заранее подойдёт конкретная задача или нет. Поэтому по умолчанию можно брать Haskell с его теперь двумя GC, и если оба плохо справляются - с умом переписывать на Rust "горячие" куски. 😃