Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

イミュータブルなデータ

💡 お知らせ: このドキュメントはAIによって翻訳されています。表現に違和感がある場合は、原文(英語)を参照するか、翻訳にご協力ください。

関数型プログラミングの_要_となるのが、イミュータブル(不変)なデータ型です。

これまでにも、イミュータブルなデータ型の例をいくつか見てきました。

加えて、Flix の標準ライブラリは次のようなイミュータブルなデータ型を提供しています。

  • List[t] : 型 t の要素からなるイミュータブルな単方向リスト。
  • Chain[t] : 型 t の要素からなり、追加(append)が高速なイミュータブルなチェーン。
  • Vector[t] : 型 t の要素からなり、要素の参照(lookup)が高速なイミュータブルなシーケンス。
  • Set[t] : 型 t の要素からなるイミュータブルな Set(セット)。
  • Map[k, v] : 型 k のキーを型 v の値に対応づけるイミュータブルな Map(マップ)。

その他のイミュータブルなデータ型には、次のものがあります。

  • Option[t] : None または Some(t) のいずれかになる型。
  • Result[e, t] : Ok(t) または Err(e) のいずれかになる型。
  • Nel[t] : 型 t の要素からなる、空でないイミュータブルな単方向リスト。
  • Nec[t] : 型 t の要素からなり、追加(append)が高速な、空でないイミュータブルなシーケンス。
  • MultiMap[k, v] : 型 k のキーを型 v の値の_Set_に対応づけるイミュータブルな Map。