タグ

ブックマーク / www.shido.info (1)

  • Data Structures

    10. 種々のデータ構造 この文章では、大きいデータを Haskell で扱うほう方法について述べます。 Array, FiniteMap, IORef, Array.IO, HashTable を紹介します。 1. リストが関数型言語のデータとして用いられている理由 関数型言語でリストが多く用いられているのは、リストは Cons する分には、データを全て作り直す必要がなく、 Cons した分を付け足してそこのポインターを新しいリストとみなせるからです。 例えば、[1,2,3] というリスト図1のような構造体(コンスセル)の列への最初のポインターとして実装できます。 これに、0 を Cons すると 0 のコンスセルを先頭に付け足すだけで新しいリスト [0,1,2,3] が生成したと して取り扱うことが出来ます。 つまり、コンスセルの先頭へのポインターをリストとすると、新しいリストが少ない

  • 1