This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-08-09
Channels
- # admin-announcements (5)
- # architecture (8)
- # beginners (7)
- # boot (41)
- # braveandtrue (1)
- # cider (77)
- # clara (3)
- # cljs-dev (56)
- # cljsjs (7)
- # cljsrn (7)
- # clojure (44)
- # clojure-austin (3)
- # clojure-brasil (1)
- # clojure-hk (3)
- # clojure-russia (137)
- # clojure-spec (14)
- # clojure-uk (44)
- # clojurescript (33)
- # cloverage (3)
- # core-async (10)
- # css (1)
- # cursive (16)
- # datomic (116)
- # devcards (14)
- # emacs (1)
- # events (1)
- # funcool (2)
- # functionalprogramming (1)
- # hammock-driven-dev (1)
- # jobs-rus (124)
- # lein-figwheel (1)
- # leiningen (1)
- # liberator (4)
- # melbourne (3)
- # mount (73)
- # off-topic (3)
- # om (4)
- # om-next (15)
- # onyx (38)
- # other-languages (4)
- # perun (2)
- # proton (36)
- # protorepl (2)
- # random (1)
- # re-frame (56)
- # reagent (7)
- # specter (4)
- # testing (1)
- # untangled (13)
- # yada (18)
@dbushenko: тут ошибка https://youtu.be/6sZ6A7jx3QA?list=PLHmGp4OYEMn3yPOV03tjpl64doNfNeabV&t=2678
(defn f3 [a b]
"Sums a and b"
(+ a b))
если поменять местами объявление параметров и строку, то у нас будет документация к функции:
(defn f3
"Sums a and b"
[a b]
(+ a b))
(doc f3)
строка с документацией живет до определения параметров не просто так, а с умыслом - для объявления вариаций функции с разным набором параметров.
интересно откуда эта ошибка пошла - я сам так долго писал. Мож с питона - там как раз
def f(a):
“Here goes docstring”
return a
а кста в тему - я хочу README.md сгенерить на основе doc strings в либе, есть чо готовое для этого?
@artemyarulin: смотри "Documentation Tools" http://www.clojure-toolbox.com/
оу, вау, дофега. Спасибо @comerc
The strange looking quoted vector is a shorthand to avoid having to quote every individual symbol within the vector. You could type:
(require '[clojure.string :as string]) ихмо так проще
а в cljs кста наверно тока ns :require работает?
походу да, низя +
load is planned
load-file exists, but only as a REPL special function
На http://rsdn.org переехали "временно".
Я помню, как Parallels как-то потерял http://Parallels.com на несколько часов.
"Update at 25.07.2016: Сейчас ведется перерегистрация домена. Процесс может занять от 7 до 14 дней. Простите братцы!"
"Долго рассказывать. В общем, сами виноваты. Сейчас надо перерегистрировать на себя и держать ДНС самим. А это займет врем. Домен не потерян. Просто тот кто его регистрировал получил проблем и решил передать его нам в срочном порядке. Но ДНС он уже отключил."
ага + лень. учитывая стоимость доменов ленивое решение было бы заплатить на десять лет вперед, и включить в годовую тудушку. хотя есть такой момент -- возможно они были на http://nic.ru регистраторе -- у меня с ними самого были проблемы. вдруг стали слать спам такой нехилый. а что делать -- их же не забанишь. я им даже в саппорт писал, они такие: у нас в договоре есть, можем слать рекламные сообщения. я прифигел и перевел все домены к другому. дешевле и пишут по делу
а rsdn видно забанил. по другому не знаю, как можно предпреждения регистратора пропустить...
Ахаха: " К сожалению, те кто должны были инициировать это дело так и не послали нотариально-заверенное письмо. Так что процесс затягивается. "
http://rsdn.org зарегистрирован на GoDaddy, что не лучше, впрочем.
@andmed: Дык тогда просто. А то по этому списку регистрар на островах может быть только на Соловецких =) https://cctld.ru/en/registrators/
LOL. У меня был личный сайтец 10 лет назад в ру зоне. бросил. с тех пор висит в продаже за немыслимые бабки. я плюнул и десять лет спустя прикупил в us ништяк.
ребята, внимание offtopic - кто-то практикует работу стоя? необязательно 100%, полдня стоя - полдня сидя тоже ок
практиковал ага (и практикую когда могу), в чем вопрос?
ты весь день стоишь?
я хз, оно может со спиной не связано но у нас очень много народу юзало вот эти штуки http://www.popsugar.com/fitness/How-Strength-Train-Balance-Board-3728459
я тоже без такой счас не очень представляю работу стоя - няшная штука)
о тоже вариант
ты прям весь день на нем?
ну оно типа для стоматологов, финская фирма запатентовала и задорого продает, аналогов не видел
ну самое то чтоб стол поднимался и рядом держать обычное кресло, седло, рядом пуфиков еще - чтоб целый день перебираться с одного на другое 🙂
да причем обычного икеевского стола вполне хватает по высоте, не надо покупать дорогие столы , для работы стоя просто так стол не найдешь
еще кста видел коллегу на варианте вот такого http://www.ladywow.ru/wp-content/uploads/2011/06/stul-sedlo-v-interere.jpg Тока взрослый здоровый вариант
зато у нас снега зимой полно 😛
и осенью, и весной и даже иногда летом
возвращаяс к теме - когда там 1.9 зарелизят уже? Естимейстов никто не видел?
а я вот так устроился: http://img-fotki.yandex.ru/get/47741/184786009.7/0_137171_7342145a_orig.jpg http://img-fotki.yandex.ru/get/42925/184786009.7/0_137177_df978240_orig.jpg
но у правильного стартапера должно быть вот такое кресло: http://www.hmshop.ru/catalog/aeron/
у зажравшегося
@rmuslimov: вот тебе пажаласта из стелажа икеевского http://d2dv8ptxfopuxj.cloudfront.net/dims4/default/93eec6e/2147483647/resize/584x%3E/quality/90/?url=http%3A%2F%2Fcoke-journey.s3.amazonaws.com%2F02%2F28%2F772b7be34644bb2881d53761f514%2F3.jpg
@rmuslimov: так в болгарке же есть моторчик 🙂
такой изврат работает:
(defn a [v] (->> "X"
(.replace v "A")))
(-> "a b c"
(.toUpperCase)
(a))
объединяю - ругается:
(-> "a b c"
(.toUpperCase)
(fn a [v] (->> "X"
(.replace v "A"))))
Parameter declaration clojure.core/-> should be a vectorпоследний fn надо в скобках
user=> (-> "a" (str "b"))
"ab"
user=> (-> "a" (fn[c] (str c "b")))
IllegalArgumentException Parameter declaration a should be a vector clojure.core/fn (core.clj:4355)
user=> (-> "a" ((fn[c] (str c "b"))))
“ab”
тож самое с лямдами (-> "a" (#(str % "b")))
ну и чтоб 2 раза не вставать, другая популярная проблема:
user=> (-> "a" ((fn[v]{:k v})))
{:k "a”}
user=> (-> "a" (#({:k %})))
ArityException Wrong number of args (0) passed to: PersistentArrayMap clojure.lang.AFn.throwArity (AFn.java:429)
user=> (-> "a" (#(identity {:k %})))
{:k "a"}
т.е. из лямбды вернуть мапу просто так нельзя, надо обернуть в identity (или в do что короче но как по мне менее понятно)слишком толсто
Не могу не запостить комент оттуда:
Этот график, скорее, показывает относительные требования к компетенциям программиста при разработке. с++ и джава, как сильно распространенные языки, предъявляют низкие требования, квалификация программиста растет медленно => средний уровень программистов низок => много багов. "навороченные" статически типизированные языки предъявляют более высокие требования, квалификация растет быстрее, средний уровень программиста растет (а количество багов, соответственно, падает). Ну и сложнее всего писать на "навороченных" динамических языках - это требует как определенного уровня знаний (случайные люди на кложурах с эрлангами не пишут) так и развитой дисциплины (значительно превышающей требования статических языков) с набором специфичных скиллов, которые позволяют в нужном месте подстелить соломки и писать безопасно без типов. Такие программисты - топчик, и могут писать с минимальным уровнем багов даже на малболге
мы - топчик @artemyarulin: почему на графике нет PHP ?! 🙂
да кому он нужен - пхп создан чтобы умирать) Ну и кста вот это офигенная статья про трансдюсеры, точнее про их имплементацию в хаскеле http://hypirion.com/musings/haskell-transducers
@artemyarulin:
> т.е. из лямбды вернуть мапу просто так нельзя, надо обернуть в identity (или в do что короче но как по мне менее понятно)
что-то дофига косяков с этой хренью #(%)
да неа, первое это специфика threading macro - если поиграться с macroexpand то все там понятно станет. Ну а вот с лямбдами и возвращением мапы - “надо запомнить” (с)