Size: a a a

Clojure — русскоговорящее сообщество

2021 March 13

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Лан. Ща сам разберусь))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
А так?
(->> "*"
    (iterate #(do (println %) (str % " *")))
    (take 10000))
надеюсь, ты не считаешь красивым смешивать генерацию данных и сайд-эффект операцию над ними
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Не. Хочу получить peak performance
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Не. Хочу получить peak performance
тогда соревнуйся с этим 😊
;•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
 (do (->> (iterate #(.concat "* " %) "* ")
          (transduce (comp (take 10000) (map identity))
                     (constantly nil)))
     nil)
;•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
)
Evaluation count : 36 in 6 samples of 6 calls.
            Execution time mean : 22,738130 ms
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Не. Хочу получить peak performance
ну и чур без loop/recur 😊
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
)))))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
тогда соревнуйся с этим 😊
;•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
 (do (->> (iterate #(.concat "* " %) "* ")
          (transduce (comp (take 10000) (map identity))
                     (constantly nil)))
     nil)
;•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
)
Evaluation count : 36 in 6 samples of 6 calls.
            Execution time mean : 22,738130 ms
ну и похоже, что добавление короткого хвоста к длинной строке немножко быстрее
  (do (->> (iterate #(.concat ^String % "* ") "* ")
          (transduce (comp (take 10000) (map identity))
                     (constantly nil)))
     nil)
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну и похоже, что добавление короткого хвоста к длинной строке немножко быстрее
  (do (->> (iterate #(.concat ^String % "* ") "* ")
          (transduce (comp (take 10000) (map identity))
                     (constantly nil)))
     nil)
на пару миллисекунд
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну и похоже, что добавление короткого хвоста к длинной строке немножко быстрее
  (do (->> (iterate #(.concat ^String % "* ") "* ")
          (transduce (comp (take 10000) (map identity))
                     (constantly nil)))
     nil)
А у меня мой вариант быстрее
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Ща скину тест
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Результат топ3. Мой вариант тут второй
https://gist.github.com/55bc6daf706699167537e105db798acf

Код
https://gist.github.com/80ff2a1d7e06d1fb93f3d8ffcfaeb6be
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
мерял чем? таймом?
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Да. Ща, нашел там в чем дело может быть
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
ну, таймом мерить не очень серьёзно
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Так и ты им мерял..
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Так и ты им мерял..
нет, точные замеры я делал criterium
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
вот тут критериум https://t.me/clojure_ru/145281
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
также кое-где должно быть n+1
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
также кое-где должно быть n+1
а, вижу
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
ты что, прям с println мерял?
его же скорость от фазы луны зависит
источник