ST
декларируется ленивость, и если мы берём только 2 элемента, то ожидаем и вычисления только по двум
Size: a a a
ST
AK
ST
AK
ST
(range)
? 😊AK
AK
AK
ST
(range)
? 😊AS
AS
ST
~/.lein/profiles.clj
AS
AS
ST
(range)
медленный, просто он проигрывает в сценариях, где от чанков есть прирост производительностиAI
AB
AB
ST
(do
"Reduce over chunked seq"
(criterium/quick-bench
(reduce + (map inc (range 10)))))
Evaluation count : 648552 in 6 samples of 108092 calls.
Execution time mean : 941,134765 ns
Execution time std-deviation : 31,598083 ns
Execution time lower quantile : 917,554851 ns ( 2,5%)
Execution time upper quantile : 994,298158 ns (97,5%)
Overhead used : 1,968342 ns
=> nil
(do
"Reduce over list"
(criterium/quick-bench
(reduce + (map inc '(0 1 2 3 4 5 6 7 8 9)))))
Evaluation count : 316116 in 6 samples of 52686 calls.
Execution time mean : 1,894743 µs
Execution time std-deviation : 12,072866 ns
Execution time lower quantile : 1,883314 µs ( 2,5%)
Execution time upper quantile : 1,907925 µs (97,5%)
Overhead used : 1,968342 ns
=> nil
ST
(chunked-seq? (range 100))
=> true
(chunked-seq? (map inc (range 100)))
=> false