Size: a a a

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

2020 March 08

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Их очень много, пол интернета. Можно второй курс по Хаскелю Дениса Москвина на Степике пройти
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
Их очень много, пол интернета. Можно второй курс по Хаскелю Дениса Москвина на Степике пройти
ну хотя бы поисковое выражение дай хорошее
list monad мне не очень помогало
источник

AI

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

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
пардон, у меня на это триггер
человек на халяву хаскель в кложу транспилирует, а вы придираетесь 😊
источник

ST

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

AI

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

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну хотя бы поисковое выражение дай хорошее
list monad мне не очень помогало
попробуй тогда Липовачу со слоном почитать, она есть в свободном доступе в инете, может на английском только правда. Там совсем для начинающих, но некоторые простые монадки на пальцах объяснены на примерах
источник

ST

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

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Кстати, по прочтении этой ссылки может осенить, что for и лист компрехеншен это тоже оно самое 😊
источник

ST

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

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну тогда там выше let на if-some менять
слазил в кложадокс, откопал то что надо ))
(or (not-empty (filter ...)) (recur ...))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
слазил в кложадокс, откопал то что надо ))
(or (not-empty (filter ...)) (recur ...))
нет предела совершенству 😊
источник

AI

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

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
тогда и go надо без непонятного имени 😊
#(or
  (not-empty (filter (fn [[_ r1 r2]] (or (= n r1) (= n r2))) %))
  (recur (mapcat step %)))
источник

AI

Andrey Ivanov in Clojure — русскоговорящее сообщество
и let-fn вместо let ). Но go - это чисто хаскелевский конвеншен, переехал как есть )
источник

AI

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

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
и let-fn вместо let ). Но go - это чисто хаскелевский конвеншен, переехал как есть )
прикольно
но тогда с анонимной функцией уже не прокатит
(defn t [k n r1 r2]
 (letfn [(step [[cs r1 r2]] [[(conj cs :c1) (- (* k r2) r1) r2]
                             [(conj cs :c2) r1 (+ (* k r1) r2)]])
         (go [l] (or
                   (not-empty (filter (fn [[_ r1 r2]] (or (= n r1) (= n r2))) l))
                   (recur (mapcat step l))))]
   (go [[[] r1 r2]])))
источник

AI

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

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Andrey Ivanov
Нормас, анонимные функции больше одной строки меня все равно тимлид отправляет переписывать на именованные. У него на это триггер ))
просто l бы переименовать...
источник

AI

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