This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-03-08
Channels
- # bangalore-clj (5)
- # beginners (6)
- # boot (66)
- # cider (48)
- # cljsrn (14)
- # clojure (699)
- # clojure-austin (2)
- # clojure-berlin (1)
- # clojure-boston (5)
- # clojure-dev (3)
- # clojure-india (7)
- # clojure-italy (24)
- # clojure-nl (5)
- # clojure-russia (33)
- # clojure-spec (30)
- # clojure-uk (64)
- # clojure-ukraine (22)
- # clojurescript (123)
- # clojurewest (1)
- # cursive (18)
- # datascript (44)
- # datomic (12)
- # dirac (46)
- # figwheel (1)
- # gsoc (5)
- # hoplon (6)
- # immutant (29)
- # instaparse (1)
- # juxt (26)
- # lein-figwheel (5)
- # leiningen (4)
- # luminus (8)
- # mount (56)
- # off-topic (60)
- # om (67)
- # om-next (1)
- # onyx (8)
- # proton (28)
- # re-frame (125)
- # ring (3)
- # ring-swagger (3)
- # specter (22)
- # testing (2)
- # unrepl (1)
- # untangled (91)
@y.khmelevskii почему нет, не вижу проблем с сайд эффектами в интерцепторах.
@misha
(->> :foo @(atom {:foo :bar}))
я бы не стал так записывать, иначе ты передаешь deref/@
2 аргумента - сам атом и :foo
думаю так лучше
(->> {:foo :bar} atom deref :foo)
или (->> (atom {:foo :bar}) deref :foo)
голосую за deref - не многие знают что можно юзать ее как функцию, а не @
. У меня много тестов написаны в таком стиле
(->> (do-side-affect-which-returns-atom)
deref
:key1
(= 42)
is)
@y.khmelevskii интерцептором норм. имейте ввиду только, что время можете мерять странное, в зависимости от положения интерцептора в стеке. ещё если хэндлер вернёт ленивую коллекцию, померяете меньше, чем на самом деле будет сделано, емнип
при разработке react native очень не хватает devcards , @roman01la нашел твой проект https://github.com/roman01la/react-native-devcards, можешь поделиться, что в этом направлении есть? конечно хотелось бы в веб это все отображать, т.е. использовать обычный devcards для react native вьюх
@larhat , @ilshad спасибо за ответ. Сейчас потестирую насколько время выполнения запроса будет отличаться от того, что я могу получить в интерцепторе. А вы бы в каком месте высчиляли время выполнения запроса и сохраняли его?
@trybeee @artemyarulin юзкейс был такой, что есть атом с мапой-лукапом, и я через нее проганяю значение, как через ф-ю, типа
(->> k m f1 f2 (map f3)))
и почему-то ожидал, что @
"отрабатает" раньше, чем макроэкспанд, а не тогда жеа @
это не макрос сам по себе?
тк он не сильно похож на классический макрос (не похож на вызов ф-ии), я думал, что он "специальнее", в детали не вдавался особо раньше
(defn deref
"Also reader macro: @ref/@agent/@var/@atom/@delay/@future/@promise
а чо это такое reader macro?
clojure readers - это оно и есть?
The behavior of the reader is driven by a combination of built-in constructs and an extension system called the read table. Entries in the read table provide mappings from certain characters, called macro characters, to specific reading behavior, called reader macros. Unless indicated otherwise, macro characters cannot be used in user symbols.
ну кложа сразу выплюнула бы
clojure.lang.ArityException: Wrong number of args (2) passed to: core/deref
а вот были бы типы - сразу бы компилятор заругался!
@andre без понятия, rndevcards делал ради фана
а что думаете по поводу типов в https://github.com/arohner/spectrum
How It Works
This contains a spec parser and a re-implementation of clojure.spec, except they work on literals and specs rather than normal clojure values.
(:require [spectrum.conform :as c])
(c/conform (s/cat :x integer?) [3])
=> {:x 3}
(c/parse-spec (s/+ integer?))
Returns a defrecord, containing the parsed spec. This is basically a reimplementation of clojure.spec, except more data-driven
идея хороша да, но реализация чота не ах. Но по другому никак, спека очень macros heavy, сделать что-то вокруг нее можно разве что другими макросами, так что предположу что не взлетит и помрет под тяжестью деталей реализацииУ Аллена проблема с доведением до качества продакшена, он обычно идеи ковыряет и бросает на версии 0.2
дак реестр то в райнтайме достпупен, а у него compile time же типчики
типчики в runtime на основе спеки это... омг - спека 😄