純粋関数
暗黙の入出力がない
関数
明示的な入力…関数の引数
暗黙の入力…現在時刻やグローバル変数など外部の状態によって出力が変化しうる。
参照透過
でない
明示的な出力…関数の返り値
暗黙の出力…標準出力への書き込みや変数への再代入、値の書き換えなどが行われる。
副作用
がある