¿Qué debo usar árboles de los dedos de Clojure para?
-
09-10-2019 - |
Pregunta
nuevo grupo de bibliotecas contrib de Clojure tiene una árbol dedo biblioteca . ¿Cuáles son los casos de uso de los árboles de los dedos en clojure? Cuando deben Finger árboles pueden utilizar en lugar de uno de los otros strucures de clojure de datos alrededor del stent:. Vectores, juegos, mapas, etc., persistentqueues
El alegría de Clojure menciona que los árboles de dedo puede ser utilizado para las colecciones indexadas en las que se requieren inserciones y deleciones baratas. También se han descrito como la "navaja suiza de las estructuras de datos." Ejemplos de esto sería muy apreciado.
Solución
2-3 árboles de dedo se describen en un papel por Ralf Hinze y Ross Paterson . Ellos no sólo proporcionan una descripción completa de la estructura de datos en sí, pero varios ejemplos de cómo se puede utilizar ... en Haskell. La mayor parte de las características que describen ya están disponibles en la biblioteca Clojure, pero la documentación es simplemente no existe todavía.
Me introduciremos árboles dedos Clojure en Clojure Conj este fin de semana.
Actualización: Ahora hay algunos ejemplos que se muestran en http : //github.com/clojure/data.finger-tree#readme
Actualización: Las diapositivas de la charla: https://github.com/Chouser/talk-finger-tree/blob/master/finger-trees.pdf
Actualización: Vídeo de la charla: http: // www .youtube.com / reloj? v = UXdr_K0Lwg4