†すべての関数が引数を受け取らなければならない。すべての関数が値を返さなければならない。関数が同じ引数で呼び出されたときは常に同じ値を返さなければならない。†1930年代、数学者アロンゾ・チャーチが関数と変数(x、y)のみを使用する論理システムの作成を試みました。この論理システムはラムダ計算と呼ばれます。ラムダ計算では、すべてのものが関数として表されます。†プログラミング環境の値を変更すれば、プログラムの状態を変化させることになります。状態が変化すればコードに副作用が生じ、それらの副作用によってコードの論証が難しくなります。結果として、コードが安全ではなくなる可能性があります。