This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-10-16
Channels
- # announcements (1)
- # aws (11)
- # beginners (3)
- # boot (63)
- # cbus (1)
- # cljs-dev (4)
- # clojure (96)
- # clojure-dev (5)
- # clojure-germany (2)
- # clojure-japan (43)
- # clojure-poland (2)
- # clojure-russia (38)
- # clojure-sg (2)
- # clojurescript (138)
- # clojurex (1)
- # cursive (3)
- # datomic (16)
- # docs (6)
- # emacs (3)
- # events (2)
- # ldnclj (42)
- # off-topic (6)
- # om (384)
- # onyx (122)
- # spacemacs (6)
Темы для hangout можно закидывать сюда - https://docs.google.com/document/d/1Wtke8GGRX7bHd8uDBPtsS_1T9nQqiRqVU2e4txTpoKk/edit?usp=sharing
помогите мне с макросом, пожалуйста
(defn failed-arg [args]
(first (filter failed? args)))
(defmacro maybe [f & args]
(if-let [x (failed-arg args)]
~x
(if (seq? f)
`(~@f ~@args)
`(~f ~@args))))
(defmacro maybe->> [val & fns]
(let [fns (for [f fns] `(maybe ~f))]
`(->> ~val ~@fns)))
maybe->> раскрывается в какую-то фигню:
idcert.errors=> (macroexpand '(maybe->> 3 (+ 2) (/ 5)))
(/ 5 (idcert.errors/maybe (+ 2) 3))
что я делаю не так?ну и когда делаешь макросы для начала нужно понять во что ты хочешь что бы оно раскрывалось. (maybe->> 3 (+ 2) (/ 5)) что с этим должно произойти?
я хотел https://brehaut.net/blog/2011/error_monads вот это вот, только чтобы можно было цепочки делать
(if-let [x (failed-arg args)] ты тут вот понимаешь что проверяешь в failed-arg не значение, а некую форму синтаксическую?
смотри. Передаем в failed-args аргументы функции. Они уже вычислены, так что там всякие строки-числа-хеши или Failure. Оттуда возвращается или nil, или первый найденный Failure
@nicola: а какую готовую? Он там не вынес в либу вот эти свои штуки, плюс там не очень удобно с только этим attempt-all жить
https://github.com/clojure/algo.monads - вроде популярная
Господа, а что вы скажете про идею тащить clojurescript и React в content script в хромовом расширении?
С одной стороны, не хочется уже руками DOM'ом манипулировать, с другой стороны -- полмегабайта кода в каждую страницу, даже после минификации.
Расширение не для определённых страниц, а "ковровое", а-ля AdBlock, но немного для других целей.
как активный пользователь разных расширений браузера скажу так - не надо, пожалуйста
всем привет. мне тут пришла рассылка, вдруг кому будет интересно. > Коллеги, > > Есть возможность поработать контрактором с Когниансом (http://cogniance.com/). Нужен Clojure and/or Erlang разработчик. Если есть вопросы, пишите на адрес: <mailto:[email protected]|[email protected]> или в скайп: > andrew.panfilov.work > С уважением, > Андрей Панфилов
@jbmeerkat: Окей :)
Я знаю уже 4 компании которые начинаются с cogni
cognitech cognician
Cognizant Technology Solutions
Надо ботать кложу