Używam biblioteki Sesame do uruchamiania zapytań SPARQL przez potrójny magazyn w pamięci.Jak zmienić obiekt podobny do iteratora java do sekwencji clojure
Używam Clojure, aby to osiągnąć.
Wynik zapytania jest niestandardowym obiektem podobnym do Iteratora [1], więc clojure seq nie działa na nim po wyjęciu z pudełka.
Jaki jest najbardziej elegancki sposób przekształcenia niestandardowego obiektu podobnego do Iteratora w sekwencję clojure?
Najbardziej oczywistym i głupim pomysłem, który przyszedł mi do głowy, jest zapętlenie i zbudowanie wektora clojure, ale jestem pewien, że jest bardziej eleganckie podejście do tego problemu.
[1] http://www.openrdf.org/doc/sesame2/api/info/aduna/iteration/Iteration.html
To (reifikacja Iterable zamiast Iterator) to jedno podejście; kolejnym jest reifikacja Iteratora, a następnie zawijanie go za pomocą ['iterator-seq'] (http://clojuredocs.org/clojure_core/clojure.core/iterator-seq). – amalloy
Miło, dobrze wiedzieć! – laczoka