始める無料で始める

純粋関数を見分ける

純粋関数は次の2つの性質を満たします。

  • 出力が入力のみに依存する:同じ値を入力すれば、出力は常に同じになります。
  • 副作用がない:つまり、関数の外側に影響を与えません。

R の多くの関数は純粋ではありませんが、日々の利用には不可欠です。分析では、ファイルをダウンロードしたり、プロットを作成したり、結果を保存したりする必要があります。

プログラミングでは、関数は可能な限り純粋にするか、逆に必要な副作用に特化して不純にする(たとえば、ファイルをダウンロードする関数はそのダウンロードだけを行う)ことを目指すとよいです。そのためにはまず、純粋な関数と不純な関数を見分けられる必要があります。

この演習では、純粋または不純な関数を実行し、その出力がどうなるかを確認します。

この演習はコースの一部です

purrr で学ぶ中級関数型プログラミング

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Launch Sys.time(), Sys.sleep(1), & Sys.time()
___()
___(___)
___()
コードを編集して実行