воскресенье, 5 января 2014 г.

[prog] RSDN Magazine: Ключевые возможности Rust

Большая и интересная статья о языке Rust из RSDN Magazine опубликована в Интернете: Ключевые возможности Rust. Если кто-то, как и я сам, только слышал о том, что Mozilla уже давно работает над этим языком, но пристально на него никогда не смотрел, то рекомендую. Интересно. И написано хорошо, толково и по делу.

По поводу языка у меня сложилось впечатление, что это еще одна вариация на тему языка Go, но выполненная людьми с другими эстетическими пристрастиями. То, что отцом языка был любитель функциональщины, видно из элементов синтаксиса. И, на мой взгляд, является приговором ;)

На RSDN-е в обсуждении статьи Александр Ставонин дал ссылку на мое мнение о ситуации с D и его собеседники попробовали развернуть мои аргументы против D в сторону Rust-а. Вроде того, что Rust-у в свете активного развития C++ не светит так же, как и D. С этим я не соглашусь. D изначально позиционировался как замена C++. Rust же, как и Go (а так же другие не взлетевшие вариации на тему безопасного низкоуровневого языка, вроде Cyclone или даже BitC), скорее пытаются встрять в узкую нишу на стыке между C, C++ и Java/C#. Т.е. когда производительность еще важна, но и возможность заплатить за безопасную работу с памятью есть, а богатые возможности C++ не особо нужны.

Для меня открытый вопрос, есть ли эта ниша вообще. А если она есть, то хорошо ли ее заполнять совсем новым языком. Но очевидно, что Rust и Go совершенно точно не претендуют на глобальную замену C++. Значит, их будущее будет определяться другими факторами, нежели будущее D.

Что ждет Rust -- это совсем отдельный вопрос. Не хочу флеймить на эту тему, тем более, что Rust-ом я не интересуюсь и мало что про него знаю. Общее впечатление такое, что это интересный эксперимент. Именно эксперимент. Посему, трансформация его во что-то практически значимое, в принципе, возможна, но маловероятна. Имхо, используемые в реальной работе инструменты изначально создаются таковыми. Здесь ситуация несколько иная. Так что лично я сомневаюсь, что Rust достигнет стадии пригодного для повседневного промышленного использования языка. Но зато вполне может стать основой для такого языка, своего рода полигоном для проверки и отбраковки нежизнеспособных идей. И тут как раз хорошо то, что эксперименты над Rust ведутся с прицелом на реальную разработку обычного ПО (а не в контексте развития computer science, как это происходит с Coq, Agda или Epigram).

PS. Автору же статьи, Александру Ставонину, большой респект. Написание таких статей дело не простое. Здесь же все здорово получилось.

Комментариев нет: