関数とは

Wikipediaには現代の関数について以下の記載があります。

個々の独立変数と従属変数の対応そのものが関数であり、その対応は数式などで表す必要はない

関数

私もこの考え方が好きで、ざっくり言ってしまえば「何かを入れたら、何かが出てくる装置」を関数だと思っています。

ボードゲームへの転用

例えばたくさんの関数カードや関数ボードをあらかじめ用意して、それを連結させて目的の出力を得る、というようなゲームが考えられます。

関数の例

  • トマトを入れたら、トマトジュースを出してくれる関数
  • 水を入れたら、お湯を出してくれる関数
  • 鉄を入れたら、フライパンを出してくれる関数

別に入れるものが1つである必要はありません。

  • 鉄と水を入れたら、ミネラル天然水を出してくれる関数
  • 畑とチューリップの種を入れたら、チューリップ畑を出してくれる関数
  • GoogleMapとスマートフォンを入れたら、ポータブルマップを出してくれる関数

また、必ず出力がある必要もありません。ないということが出力である関数もあります。

  • 銅と謎の液体を入れたら、何も出ない関数

出てくるものが物体である必要もありません。

  • 芸術家と絵具を入れたら、画家を出してくれる関数

関数の連結

関数を連結させるとは、一つ前の関数が出した結果を次の関数に入れる値だとすることです。

  • 「トマトを入れたら、トマトジュースを出す関数」+「トマトジュースを入れたら、ケチャップを出してくれる関数」
  • 「太陽の光と海水を入れたら、塩を出してくれる関数」+「塩を入れたら、塩飴を出してくれる関数」