29

Clojure の新しい contrib ライブラリ グループにはfinger tree ライブラリがあります。クロージュアのフィンガーツリーのユースケースは何ですか? clojure の他の永続的なデータ構造 (ベクトル、セット、マップ、永続キューなど) の代わりにフィンガー ツリーを使用する必要がある場合。

The Joy of Clojureは、低コストの挿入と削除が必要なインデックス付きコレクションに Finger ツリーを使用できると述べています。また、「データ構造のスイス アーミー ナイフ」とも呼ばれています。この例は非常に高く評価されます。

4

1 に答える 1

27

Ralf Hinze と Ross Patersonの論文には、2 ~ 3 本のフィンガー ツリーが記載されています。それらはデータ構造自体の完全な説明を提供するだけでなく、それを Haskell で使用する方法のいくつかの例を提供します。彼らが説明する機能のほとんどは、Clojure ライブラリで既に利用可能ですが、ドキュメントはまだそこにありません。

今週末のClojure Conjで Clojure finger trees を紹介します。

更新: http://github.com/clojure/data.finger-tree#readmeにいくつかの例が示されています。

更新:トークのスライド: https://github.com/Chouser/talk-finger-tree/blob/master/finger-trees.pdf

更新:トークのビデオ: http://www.youtube.com/watch?v=UXdr_K0Lwg4

于 2010-10-20T02:09:58.380 に答える