
Andrei
23.07.2018
11:58:43

Dmitry
23.07.2018
12:01:25

Алексей
23.07.2018
12:18:25

Dmitry
23.07.2018
12:23:51
Вот то-то же!

Google

Алексей
23.07.2018
12:24:35
точнее почти никогда не нужно

Yuriy
23.07.2018
12:25:16
когда это не нужно, например?

A
23.07.2018
12:25:31
когда на пхп пишешь )

Алексей
23.07.2018
12:25:38

Alexander
23.07.2018
12:25:54

Алексей
23.07.2018
12:26:18
достаточно отработки тестов, покрывающих самые распространённые варианты + парочку гранчиных случаев

Yuriy
23.07.2018
12:26:29
когда я пишу любой бэкенд, будет грустно, если существует хотя бы один способ неправильным запросом украсть данные моих клиентов

Алексей
23.07.2018
12:27:01
возникнет неучтённая ошибка на бэкенде - она ловится, дебажится, пишется тест под неё

Yuriy
23.07.2018
12:27:52

Alexander
23.07.2018
12:28:18

Google

Yuriy
23.07.2018
12:28:41

Алексей
23.07.2018
12:28:43

Yuriy
23.07.2018
12:30:04

Alexander
23.07.2018
12:30:12

Алексей
23.07.2018
12:31:46
значит, всё-таки нужно?
Что нужно? Формально доказывать корректность каждой программы? Нет, не нужно. Статическая типизация тоже не панацея кстати.

Alexander
23.07.2018
12:32:58

Алексей
23.07.2018
12:33:02

Alexander
23.07.2018
12:33:33

Алексей
23.07.2018
12:34:13

Andrey
23.07.2018
12:35:07
а статическую линковку бинаря из-под osx в линукс удалось завести кому-нибудь при компиляции stack --docker?

Алексей
23.07.2018
12:35:33
Именно самое важное
Нет, самое важное - это всё-таки промисы. А генераторы мало где используются. В основном используют опять же промисы и async/await поверх них.

Alexander
23.07.2018
12:36:28

Алексей
23.07.2018
12:37:36

A64m
23.07.2018
12:37:42
вообще серьезное изменение языка может не иметь большого влияния на практику его использования (по крайней мере какие-то годы до того, как практика поменяется)
к примеру модули для хаскеля - это очень серьезное изменение языка но внедрение у него нулевое, так что никак на практику написания хаскельных программ оно не повлияло

Alexander
23.07.2018
12:37:50
То есть промисы это даже не изменение языка, это изменение "стандартной библиотеки".

Алексей
23.07.2018
12:38:55

Google

Alexander
23.07.2018
12:39:30

Александр
23.07.2018
12:40:17
Что делают некоторые либы.

Алексей
23.07.2018
12:40:35

Alexander
23.07.2018
12:40:55

Алексей
23.07.2018
12:41:10

Denis
23.07.2018
12:41:48

Александр
23.07.2018
12:41:58
Не "промисы и есть +/- монада", а "промисы могут иметь монадический интерфейс". А могут и не иметь.

Alexander
23.07.2018
12:42:06

Алексей
23.07.2018
12:42:36

Sunny
23.07.2018
12:42:50

Denis
23.07.2018
12:42:52

Piu
23.07.2018
12:43:09

Sunny
23.07.2018
12:43:16
ты бы ещё предложил код после обфускации читать

Denis
23.07.2018
12:43:28
вообще какого всякая дичь в haskell канале обсуждается?

Alexander
23.07.2018
12:43:34
откуды вы лезете?
Так, а что не так? .then - это bind, только принимает не только a -> m b, но и a -> b. Promise.resolve - это return

Алексей
23.07.2018
12:43:38

Denis
23.07.2018
12:44:23
надо что против темы или дичь какая - сразу права не писать в канал
развели помойку

Sunny
23.07.2018
12:44:48

Google

Алексей
23.07.2018
12:44:50

Александр
23.07.2018
12:45:16
Например, плюсовики сейчас вслед за Саттером гордятся своим новым изобретением std::expected<A,B>, который на поверку оказывается аналогом Either. И даже упоминают, что это - монада. Вот только мало кто понимает, что это не монада, а тип, который может иметь монадические свойства, если для него реализовать функтор, аппликатив и монаду (т.е., иметь fmap, pure и `bind`). Это не то же самое, что "он - монада, а значит, мы пишем монадический код"

Alexander
23.07.2018
12:45:33

Алексей
23.07.2018
12:48:07
Например, плюсовики сейчас вслед за Саттером гордятся своим новым изобретением std::expected<A,B>, который на поверку оказывается аналогом Either. И даже упоминают, что это - монада. Вот только мало кто понимает, что это не монада, а тип, который может иметь монадические свойства, если для него реализовать функтор, аппликатив и монаду (т.е., иметь fmap, pure и `bind`). Это не то же самое, что "он - монада, а значит, мы пишем монадический код"
bind и pure реализованы у промиса, насчёт fmap только не уверен


Yuriy
23.07.2018
12:48:39
Например, плюсовики сейчас вслед за Саттером гордятся своим новым изобретением std::expected<A,B>, который на поверку оказывается аналогом Either. И даже упоминают, что это - монада. Вот только мало кто понимает, что это не монада, а тип, который может иметь монадические свойства, если для него реализовать функтор, аппликатив и монаду (т.е., иметь fmap, pure и `bind`). Это не то же самое, что "он - монада, а значит, мы пишем монадический код"
но в плюсах же нет синтаксической поддержки для монад, будет туева хуча скобочек

Александр
23.07.2018
12:49:57

Denis
23.07.2018
12:50:01
в какую же чушь этот чат превращается

Admin
ERROR: S client not available

Алексей
23.07.2018
12:50:24

Александр
23.07.2018
12:50:29
"Чат уже не тот" (С)
Астрологи объявили неделю токсичности.
Число активно чатящихся хаскеллистов увеличилось вдвое.

Sunny
23.07.2018
12:55:52
кроме operator и define (сомнительно define использовать для таких целей, конечно)

Александр
23.07.2018
12:56:33

Sunny
23.07.2018
12:57:07
#define square(x) (x*x)
square(i++)
?

Alexander
23.07.2018
12:59:06
обсуждение js объявляется закрытым после этой черты:
-----_------------ ^_^ -----------------_------

A64m
23.07.2018
12:59:27
недоду-нотация впервые в мейнстрим попала в 2005-ом с тех пор внедрение особо не продвинулось

Алексей
23.07.2018
12:59:52

A64m
23.07.2018
13:00:10
но, еще 15 лет не прошло - не срок

Google

Александр
23.07.2018
13:00:21
Ну, я вчера на С++ имплементил Church encoded free monad

Alexander
23.07.2018
13:00:24
одно дело пообсуждать, другое - треш в течении двух дней устраивать
для шутников, которые хотят нащупать границы - применение силы производится случайно, но зависит от того, насколько человек "правильный гражданин"

A64m
23.07.2018
13:04:36
какие еще таргеты хаскеля будут запрещены следующими? x86? llvm ir?

Alexander
23.07.2018
13:07:17
а какие сейчас запрещены?

A64m
23.07.2018
13:07:42
яваскрипт, очевидно же

Alexander
23.07.2018
13:08:20
а, в этом смысле

Alexander
23.07.2018
13:11:43
в контексте таргета - обсуждайте
но тут уже жесть какая-то пошла

A64m
23.07.2018
13:14:49
в контексте таргета новые фичи es - революционные. половина выхлопа ghcjs это function{return;}

Yuriy
23.07.2018
13:31:36

Алексей
23.07.2018
13:34:25
идея для стартапа - телеграм бот, который вот таких вот ботов будет автоматически и мгновенно банить

Kakadu
23.07.2018
13:34:28
Народ, а в чем глубокофилософский посыл видео про "The Future of Programming"?
Выглядит как посредственный рассказ, завернутый в красивую форму

A64m
23.07.2018
13:35:54
не видел такого видео

Kakadu
23.07.2018
13:36:18
Ну сегодня же копипастили
https://vimeo.com/71278954
Такое оущение, что там какой-то троллинг во всём докладе

A64m
23.07.2018
13:38:40
> Bret Victor
а, ну понятно
может я даже и видел это видео или просто похожее