令和6年度 春期 システムアーキテクト試験 午前Ⅱ 問8
テクノロジ/基礎理論純粋関数型言語がもつ特性の一つである参照透過性の説明はどれか。
出典:令和6年度 春期 システムアーキテクト試験 午前Ⅱ 問8
- ア同じ引数を渡せば,関数は常に同じ結果を返す。
- イ関数を引数とすることや返却値とすることができる。
- ウコンパイル時に型検査を行い,型誤りがないことを保証する。
- エ実際に評価が必要になるまで式の評価を行わない。
正解:ア
解説
参照透過性は,同じ引数を渡せば,その関数が何度呼び出されても常に同じ結果を返すという性質です。純粋関数型言語では,関数が外部の状態に依存したり,外部の状態を変更したりする副作用をもたないため,この性質が保証されます。
選択肢ごとの解説
- ア正しい。同じ引数を渡せば関数は常に同じ結果を返すという性質が,参照透過性です。
- イ誤り。関数を引数や返却値とすることができる性質は,第一級関数(高階関数)の説明です。
- ウ誤り。コンパイル時に型検査を行い型誤りがないことを保証する性質は,静的型付けの説明です。
- エ誤り。実際に評価が必要になるまで式の評価を行わない性質は,遅延評価の説明です。