clojure-koans/src/koans/20_partition.clj
David Kinzer 711925a043 Add name-spaces to the clojure koans files.
This commit adds two name-spaces to beginning of the clojure koan files
in order to fix an issue both #68 and #69.
2014-05-02 16:38:17 -05:00

21 lines
838 B
Clojure

(ns koan-engine.runner)
(ns koans.20-partition (:use koan-engine.core))
(meditations
"To split a collection you can use the partition function"
(= '((0 1) (2 3)) (__ 2 (range 4)))
"But watch out if there are not enough elements to form n sequences"
(= '(__) (partition 3 [:a :b :c :d :e]))
"You can use partition-all to also get partitions with less than n elements"
(= __ (partition-all 3 (range 5)))
"If you need to, you can start each sequence with an offset"
(= '((0 1 2) (5 6 7) (10 11 12)) (partition 3 __ (range 13)))
"Consider padding the last sequence with some default values..."
(= '((0 1 2) (3 4 5) (6 :hello)) (partition 3 3 [__] (range 7)))
"... but notice that they will only pad up to the given sequence length"
(= '((0 1 2) (3 4 5) __) (partition 3 3 [:these :are "my" "words"] (range 7))))