Для чего мне использовать пальчиковые деревья Clojure? - PullRequest
29 голосов
/ 20 октября 2010

Новая группа библиотек Contribu в Clojure имеет дерево пальцев библиотека .Каковы случаи использования пальчиков в clojure?Когда следует использовать деревья пальца вместо одной из других постоянных структур данных clojure: векторы, множества, карты, постоянные очереди и т. Д.проиндексированные коллекции, где требуются дешевые вставки и удаления.Они также были описаны как «швейцарский армейский нож структур данных».Примеры этого были бы очень признательны.

1 Ответ

27 голосов
/ 20 октября 2010

2-3 пальца описаны в статье Ральфа Хинце и Росса Патерсона .Они предоставляют не только полное описание самой структуры данных, но и несколько примеров того, как ее можно использовать ... в Haskell.Большинство описываемых ими функций уже доступны в библиотеке Clojure, но документации просто еще нет.

Я представлю деревья пальчиков Clojure на Clojure Conj в эти выходные.

Обновление: Теперь есть несколько примеров, показанных на 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

...