令和6年度 春期 システムアーキテクト試験 午前Ⅱ 問8

テクノロジアルゴリズム

この問題は2024(R6)春 システムアーキテクト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。

本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。

純粋関数型言語が持つ特性の一つである参照透過性の説明はどれか。

解答・解説を読む

正解: 選択肢

正解の根拠

純粋関数型言語において、参照透過性(Referential Transparency)とは、プログラム上の任意の式をその評価結果の値に置き換えても、プログラム全体の振る舞いが変わらないという性質を指します。
これは「同じ引数を渡せば、関数は常に同じ結果を返す」ことと同義であり、関数が外部の状態に依存せず、また外部の状態を変更する副作用(Side Effect)を持たないことを意味します。したがって、アが正解となります。

各選択肢の解説

  • : 正解。参照透過性の説明です。
  • : 関数を引数や戻り値として扱うことができる性質は、関数が第一級オブジェクト(第一級関数)であること、または高階関数の説明です。
  • : コンパイル時に型検査を行い、型誤りがないことを保証する仕組みは、静的型付け(Static Typing)の説明です。
  • : 実際に評価が必要になるまで式の評価を行わない手法は、遅延評価(Lazy Evaluation)の説明です。純粋関数型言語における重要な特徴の一つですが、参照透過性そのものの説明ではありません。