Próbuję wygenerować wszystkie możliwe prefiksowe podciągi danego łańcucha w clojure. Na przykład, jeśli słowo jest Ninja
chcę wyjście być ("N" "Ni" "Nin" "Ninj" "Ninja")
Generowanie podciągów w clojure
można łatwo zrobić z tym:
user=> (def a "Ninja")
user => (for [x (range 1 (+ 1 (.length a)))]
(subs a 0 x))
("N" "Ni" "Nin" "Ninj" "Ninja")
I to wszystko jest w porządku ... chyba .. Używam dla pętli w tym miejscu .. i nie wygląda to tak bardzo clojure-y .. czy istnieje lepszy/właściwy sposób na zrobienie tego bez pętli for lub czy pętla for całkowicie okay się w tym przypadku?
dziękuję
być jasne, 'for' w Clojure nie pętli for jest to lista zrozumienie – noisesmith