Ответ 1
Erlang использует зеленые потоки с преимуществом. Это возможно только потому, что у Erlang есть виртуальная машина, которая также позволяет много других вещей, таких как hotswap-код. Но языки с виртуальной машиной не подходят для системного программирования, потому что они всегда имеют некоторые постоянные издержки, как в памяти, так и в вычислительной мощности. Rust - это язык системного программирования, поэтому он не может иметь значительную систему времени исполнения. Я бы также добавил, что Эрланг не быстро. Это, как известно, неэффективно в числовых вычислениях, например - см. здесь. Его модель concurrency обеспечивает высокую пропускную способность для операций ввода-вывода, но это совсем другое.
Итак, чтобы поддерживать зеленые потоки допустимым образом, язык должен иметь какое-то время выполнения. Причины удаления времени выполнения в Rust указаны в соответствующем RFC. Короче говоря, модель времени выполнения, используемая в Rust в то время, была трудной для работы с эффективными и трудными улучшениями, не имея достаточных преимуществ из-за проблем с реализацией и общих ограничений из-за API, поэтому она была отменена. Насколько я знаю, ничто в принципе не позволяет кому-то писать зеленый поток на основе Rust, но никто еще этого не сделал.