Fork me on GitHub
#clojure-russia
<
2016-09-09
>
andre07:09:38

You are curious about a modern lisp like Clojure. How could a language THAT old still be so revered? And what are these whispers I hear about "Data Oriented" architectures, and leveragable schemas. I want to expand my mind.

andre07:09:50

кто-нибудь может пояснить что такое leveragable schemas ?

andre07:09:13

I want to expand my mind 🙂

artemyarulin08:09:58

вопрос про спеку - могу я навернуть спеку на стандартные функции? Счас потерял пол часа времени ибо сравнивал не особо сравнимое

-   :plain-text? (= (xml-> node :Body (attr :BodyType)) "Text")})
+   :plain-text? (= (xml1-> node :Body (attr :BodyType)) "Text")})
массив с текстом, и вот подумалось - а могу я прикрутить спеку к оператору сравнения чтоб например проверять что левая и правая часть имеет тот-же тип?

artemyarulin08:09:48

ну и тока для моего кода конечно

andre12:09:47

@potapenko https://github.com/chenglou/react-motion, еще один флеш-программист

andre12:09:16

не пользовался?

potapenko12:09:30

Не, я в последнее время по RN, а там лучше нативную анимацию.

potapenko12:09:45

но за ссылку спасибо! погляжу.

misha13:09:01

а, вейт, на стандартные...

misha13:09:02

ну да, наверное просто:

(s/fdef clojure.core/= ...

misha13:09:06

но наверное это не решение, которое тебе нужно, если у тебя "битый" вызов функции

artemyarulin13:09:35

А чо нет-то, вроде то что нужно

artemyarulin13:09:52

если я в спеке проверю что аргументы одного типа, не?

misha13:09:59

просто блин, тебе же не всегда надо однотипные равнять

artemyarulin13:09:32

скучаю по хаскелю наверно да 🙂

misha13:09:39

и "foo" ≠ [1 2] - это адекватный юзкейс, с правильным результатом false

misha13:09:21

т.е. возможно тебе не = спекать надо, а функцию, которая = вызывает

misha13:09:49

ну типа перед вызовом = проверить типы

artemyarulin13:09:20

Ааа, это то да, но тут внутри функции было сравнение, спека туда не залезет

misha13:09:35

либо у тебя что-то другое вернуло список, а не стрингу, и тебе надо заспекать :out в той функции

misha13:09:23

а в той, что вызывает = - неявно ожидать, что всё работает и придут 2 стринги

artemyarulin13:09:30

не у меня было грубо гря

(defn adder-equal [a b]
  (= [+ a b] 4))

а имел ввиду
(defn adder-equal [a b]
  (= (+ a b) 4))
вот и появилась мысль заспекать =

misha13:09:55

(xml1-> node :Body (attr :BodyType)) заверни в функцию, и заспекай ей :ret string?

misha13:09:32

думаю спекать такое - шум

misha13:09:44

в репле такое отлавливается и решается

misha13:09:32

и что-то у тебя ф-я много делает troll

artemyarulin13:09:50

ну пока докапался почему там false всегда пол часа угрохал

artemyarulin13:09:59

ну дада, тоже так-то верно на самом деле 🙂

artemyarulin13:09:08

+ мало тестов

misha13:09:22

не думаю, что проблема подхачкой решается - она скорее системная

misha13:09:10

либо соглашаешься на 30 минут репла, а потом всё четко, либо любой чих заворачиваешь в именную функцию и спекаешь

artemyarulin13:09:49

эт да, ну ладно, спасиб, поиграюсь всеж со спеканьем стандартных функций попробую как 1.9 зарелизят

misha13:09:16

так фучур-спек заимпортируй 🙂

misha13:09:08

ой, смотри что я нашел:

jorda0mega [5:53 AM]  
does anyone have any recommendations for debugging (...)

artemyarulin [7:35 AM]  
REPL FTW!
kappa

artemyarulin13:09:36

ааа лол, подъебал 😄