Functional Language features in Rust: Iterators and Closures

На язык Rust было оказано влияние многими языкам и технологиями, особенно функциональным программированием.

Программирование в функциональном стиле программирования используют функции, как значения входных или выходных данных, присвоение переменным функций для последующего использования и много чего ещё. Мы не будем обсуждать здесь вопрос о том, что, такое функциональное программирование. Вместо этого мы покажем различные возможности языка.

Более подробно мы будем говорить о:

  • Замыканиях - анонимных функциях, ссылку на которые можно сохранять в переменных.
  • Итераторах - способе обработки последовательности элементов.
  • Как с помощью этих языковых конструкций можно улучшить работу в операциях ввода/вывода (Глава 12)
  • Производительности этих конструкций. Они быстрее, чем вы думаете. :-)

Ещё есть и другие возможности функционального программирования, которые реализованы в Rust - шаблоны поиска (match), перечисления. Эти темы также будут освещаться в это главе. Хорошо понять, что уметь правильно применять замыкания и итераторы очень важно при написании быстроработающего кода. Эту главу мы посвящаем рассмотрению именно этих вопросов.