Size: a a a

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

2020 July 16

А⚙

Антон ⚙️ in Clojure — русскоговорящее сообщество
Tim Plotnikov
Контроль за эффектами конечно много чего бы дал. Но это как null-чеки в каком-нибудь котлине - программист и сам может об этом подумать. Помню даже у Мартина (или у кого-то ещё) про этот rant вокруг nullability - типа прогеры стали такими тупыми, что не могут с нулями разобраться))

Но как бы это не было весело, все мы понимаем, что чем больше делает работы компилятор, тем лучше для конечного софта.
Чем меньше я думаю над нуллами, тем больше я могу думать на бизнес-логикой. Нуллабельность всего и вся — это ущербность
источник

KC

Kain Crow in Clojure — русскоговорящее сообщество
Oleg Roshchupkin
Я только так и делаю, не умею по другому.
Жаль тебя
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Kain Crow
Жаль тебя
Не, тебя с друзяшками жаль
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Так
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Последнее предупреждение тем кто хочет писать в чат ближайшую неделю. Прекращаем жалеть друг друга и обсуждать личности
источник

С

Слава in Clojure — русскоговорящее сообщество
Alexander
полотна копипасты это по фактам?
Это переиспользование текста, сиречь постмодернизм.
источник

Oℕ

Oleg ℕizhnik in Clojure — русскоговорящее сообщество
Tim Plotnikov
> категорным КЛ
?
Идея в том, что вы описываете типы данных на довольно развитом языке, в опрелелённом смысле недалёком от завтипного, но даже ещё с более академическим акцентом.
И дальше ваши запросы могут быть гораздо более богатыми, многие "констрейты" можно проверить статически, ну а самое главное, запросы композируются и обобщаются как программы

Если, конечно, получить пхд о том как их писатт
источник

A

Alexander in Clojure — русскоговорящее сообщество
Слава
Это переиспользование текста, сиречь постмодернизм.
ну хуями крыть это пост пост модернизм
источник

A

Alexander in Clojure — русскоговорящее сообщество
Слава
Это переиспользование текста, сиречь постмодернизм.
собственно вы же и надеялись на такую реакцию, зачем изображать удивление?
источник

А⚙

Антон ⚙️ in Clojure — русскоговорящее сообщество
Tim Plotnikov
Короче расскажу историю одну)
Я люблю ФП и всякие разные языки. Решил я как-то сделать пет-проджект, думаю какой язык взять, взял ReasonML (уж больно у окамля экосистема дерьмовая, а тут нода, тыща библиотек итд).

Сел писать, пишу обработчик реквеста на регистрацию пользователя, там полей 5. Короче описал структуру, которая должна прийти. А потом ещё для каждого поля пришлось писать валидацию. А потом ещё были там загвоздки с типами ошибок.
Короче продолбался я с этим пару дней и понял что именно в данном контексте, я делаю очень много лишней работы.

А потом взял кложу, на вход мапа, провалидировал спекой, отдал дальше, обратно как респонс вернул мапу. Когда мало, ошибиться сложно, работало как часы.

Свои проблемы в этом подходе тоже есть (главный вопрос, на который я не нашел пока ответа: нужно ли в каждой функции, которая работает с твоей мапой, делать одну и ту же проверку спекой), но так всё-таки легче. И каждый выбирает тот подход, который лучше сейчас, в данный момент)
Ну вот, пожалуйста. А в языке с типами можно сделать отдельный тип, который представляет собой провадированные данные, и сразу понимать, где валидировать нужно, а где — нет
источник

С

Слава in Clojure — русскоговорящее сообщество
Alexander
собственно вы же и надеялись на такую реакцию, зачем изображать удивление?
Я сюда пришёл 20 минут назад.
источник

А⚙

Антон ⚙️ in Clojure — русскоговорящее сообщество
Антон ⚙️
Ну вот, пожалуйста. А в языке с типами можно сделать отдельный тип, который представляет собой провадированные данные, и сразу понимать, где валидировать нужно, а где — нет
И для этого даже программу запускать не надо
источник

Oℕ

Oleg ℕizhnik in Clojure — русскоговорящее сообщество
Антон ⚙️
Ну вот, пожалуйста. А в языке с типами можно сделать отдельный тип, который представляет собой провадированные данные, и сразу понимать, где валидировать нужно, а где — нет
Я ниже написал, но оговорился, что это не так просто, как кажется
источник

A

Alexander in Clojure — русскоговорящее сообщество
Слава
Я сюда пришёл 20 минут назад.
а откуда, если не секрет?
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Антон ⚙️
И для этого даже программу запускать не надо
Ну как не надо, ввод пользователя не тайпчекнешь) Нужно распарсить как минимум сначала)
источник

ИФ

Иван Федоров... in Clojure — русскоговорящее сообщество
Антон ⚙️
И для этого даже программу запускать не надо
мы программы не останавливаем
источник

ИФ

Иван Федоров... in Clojure — русскоговорящее сообщество
поэтому нам их тоже запускать не надо :)
источник

С

Слава in Clojure — русскоговорящее сообщество
Alexander
а откуда, если не секрет?
Я много куда подписан, но сюда пришёл по ссылке в канале "Ебанатика".
источник

Oℕ

Oleg ℕizhnik in Clojure — русскоговорящее сообщество
Tim Plotnikov
Ну как не надо, ввод пользователя не тайпчекнешь) Нужно распарсить как минимум сначала)
Ну ты тайпчекнешь (условно) валидатор
источник

Oℕ

Oleg ℕizhnik in Clojure — русскоговорящее сообщество
Ну точнее автосатически его можешь собратт
источник