RosettaCodeData/Task/Fibonacci-n-step-number-sequences/Clojure/fibonacci-n-step-number-sequences.clj
2023-07-01 13:44:08 -04:00

9 lines
310 B
Clojure

(defn nacci [init]
(letfn [(s [] (lazy-cat init (apply map + (map #(drop % (s)) (range (count init))))))]
(s)))
(let [show (fn [name init] (println "first 20" name (take 20 (nacci init))))]
(show "Fibonacci" [1 1])
(show "Tribonacci" [1 1 2])
(show "Tetranacci" [1 1 2 4])
(show "Lucas" [2 1]))