Уже все почти забыли о Расте, а вот он опять всплыл.
Why I’m dropping Rust
TL;DR: Раст — это постоянная борьба с borrow-checker'ом, плюс трудность выражения конструкций, которые очень легко описываются в других языках (C++, C#). Что делает написание таких вещей, как GUI очень даже нетрививальной задачей.
Мне особо понравилась конструкция
Vec<Rc<RefCell<T>>>. Это, типа, идиоматическая запись в Расте коллекции объектов с раздельным владением. А элементы вектора создавать так:
Rc::new(RefCell::new(WidgetObj::new(1))). Няшненько.