Size: a a a

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

2020 January 27

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
а то же самое - это что? )
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
а то же самое - это что? )
для первой группы: операция filter odd? + map inc, на выходе вектор

для второй группы — двойное применение identity над каждым элементом списка, на выходе последний элемент
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
на входе что?
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
[1..10]?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
на входе что?
ну там же всё есть в коде
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
осталось сравнить простой луп с наконживанием транзиентного вектора с последующим переводом результата в персистент. у меня такой вариант оказался быстрее многих альтернатив.
«с наконживанием транзиентного вектора с последующим переводом результата в персистент»

(into) так и делает
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
на входе что?
ты хотя бы один вариант дай, чтобы я понял общую идею
размножить на разные комбинации я и сам смогу
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну там же всё есть в коде
я тоже когда-то думал, что кому-то интересно разбираться в моем коде ) ладно, щас скину луп
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
я тоже когда-то думал, что кому-то интересно разбираться в моем коде ) ладно, щас скину луп
а смысл читать циферку бенчмарка, если не видеть код, для которого эта циферка?
я и так старался разжевать как можно тщательнее
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
я тоже когда-то думал, что кому-то интересно разбираться в моем коде ) ладно, щас скину луп
возьми любой из тестируемых фрагментов, который ты хотел бы видеть по другому, и напиши альтернативу
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
я тоже когда-то думал, что кому-то интересно разбираться в моем коде ) ладно, щас скину луп
думаю, что те, кому не интересно, молчат или сразу говорят, что я хернёй страдаю 😊
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
в том смысле, что я же тактичный и воспитанный человек ))
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
чета типа такого )
(defn f [l]
 (loop [[h & t :as l] l
        r (transient [])]
   (if (empty? l)
     (persistent! r)
     (recur t (if (odd? h) (conj! r h) r)))))
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
а, конжить только (инк х)
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
чета типа такого )
(defn f [l]
 (loop [[h & t :as l] l
        r (transient [])]
   (if (empty? l)
     (persistent! r)
     (recur t (if (odd? h) (conj! r h) r)))))
такое плохо композится
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
это следует понимать как то, что оно работает быстрее? )))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
это следует понимать как то, что оно работает быстрее? )))
я ещё не померил
но просто смысл исследования в решениях, которыми удобно пользоваться с точки зрения функционального программирования, а не спускаться на уровень ассемблера 😊
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Ну мы про бенчмарки или где ))) Я даже с джавой не интеропился, ни на сантиметр не вышел за рамки языка )
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
Ну мы про бенчмарки или где ))) Я даже с джавой не интеропился, ни на сантиметр не вышел за рамки языка )
ты вышел за рамки того, что я готов писать в своём ежедневном коде 😊
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
тем более, что если в функции выше вынести одд и инк в параметры, то мы получим обычный кип-в, который вполне мог быть в стандортной либе, и которы ты бы пользовался ))
источник