Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

関数型言語の機能: イテレータとクロージャ

Rust の設計は、多くの既存の言語や 技法から着想を得ており、その中でも重要な影響の 1 つが 関数型プログラミング です。 関数型スタイルでのプログラミングには、関数を値として扱い、 引数として渡したり、他の関数から返したり、後で実行するために変数に 代入したりすることなどがよく含まれます。

この章では、関数型プログラミングとは何か、何ではないかという問題を議論するのではなく、 代わりに、しばしば関数型と呼ばれる多くの言語の機能に似た Rust の いくつかの機能について説明します。

より具体的には、次の内容を扱います。

  • クロージャ、変数に格納できる関数に似た構成要素
  • イテレータ、一連の要素を処理する方法
  • 第 12 章の I/O プロジェクトを改善するためにクロージャとイテレータを使う方法
  • クロージャとイテレータのパフォーマンス(ネタバレ: 思っているより 高速です!)

パターンマッチングや enum のような、関数型スタイルの影響を受けた他の Rust の機能については、すでに扱いました。 クロージャとイテレータを習得することは、高速で Rust らしい Rust コードを書くうえで重要な部分であるため、この章全体をそれらに充てます。