Estoy usando la biblioteca Sesame para ejecutar consultas SPARQL en una tienda triple en memoria.Cómo convertir un objeto similar a un iterador java en una secuencia de clojure
Estoy usando Clojure para lograrlo.
El resultado de una consulta es un objeto Iterator-like [1] personalizado, por lo que clojure seq no funciona en él de la caja.
¿Cuál es la forma más elegante de convertir un objeto personalizado como un iterador de Java en una secuencia de clojure?
La idea más obvia y tonta que se me viene a la mente es recorrerla y crear un vector clojure, pero estoy seguro de que hay un enfoque más elegante para este problema.
[1] http://www.openrdf.org/doc/sesame2/api/info/aduna/iteration/Iteration.html
Esto (que reifica Iterable en lugar de Iterador) es un enfoque; otra es reificar Iterator y luego envolverlo con ['iterator-seq'] (http://clojuredocs.org/clojure_core/clojure.core/iterator-seq). – amalloy
¡Agradable, es bueno saberlo! – laczoka