
Denis
18.05.2018
15:50:43
более обобщенно тогда
fmap fold . sequence

Антон
18.05.2018
15:51:39

Denis
18.05.2018
15:52:01

Alexander
18.05.2018
15:52:09
я кстати вроде так и не прошёл её

Google

Ilya
18.05.2018
15:52:54

Alexander
18.05.2018
15:53:06
codewars же выше

Ilya
18.05.2018
15:54:01

Alexander
18.05.2018
15:54:12
там есть поиск и список и все такое
каты = задачки на этом сайте

Denis
18.05.2018
15:54:24

Alexander
18.05.2018
15:54:26
регистрация через github

Ilya
18.05.2018
15:54:36

Denis
18.05.2018
15:54:46
немного первого уровня и второго

Alexander
18.05.2018
15:55:21
1 и 2 же основные?

Антон
18.05.2018
15:55:58

Google

Denis
18.05.2018
15:56:20

Alexander
18.05.2018
16:00:26
так блин как в этой дурацкой tasty передавать -p
на каждом втором символе пишет что can't parse

IC
18.05.2018
16:08:11
https://github.com/judah/pier новая сборочка. для тех, кто любит стакадж, но не стак.

Denis
18.05.2018
16:09:07
тут недавно и такое было https://github.com/aisamanra/cab

Denis
18.05.2018
16:11:09
треш какой-то

Alexander
18.05.2018
16:11:10

Maxim
18.05.2018
16:12:25
> билд-тулза для хаскеля
> написана на расте
все что вам надо знать о

Alexander
18.05.2018
16:12:40
о чем?

Maxim
18.05.2018
16:13:00
а сами додумайте :)
полиморфная шутка

Alexander
18.05.2018
16:13:09
о программистах на расте?

Ilya
18.05.2018
16:16:07
fmap mappend . sequence есть же что-то готовое для этого?
тип этой штуки такой f :: (Monad f, Monoid b) => [f b] -> f b
кажется, что концептуально тут можно просто сделать mconcat, если будет подходящий инстанс
instance (Monad f, Monoid m) => Monoid (f m) where
mempty = return mempty
mappend = liftM2 mappend
Это скомпилировалось, но надо проверить законы.
Для некоторых стандартных монад такие инстансы впрочем есть
instance Monoid a => Monoid (Maybe a) -- Defined in ‘GHC.Base’
instance Monoid b => Monoid (a -> b) -- Defined in ‘GHC.Base’
проверил fmap mconcat . sequence === mconcat на парочке входов — результаты совпали.

IC
18.05.2018
16:16:13
https://github.com/lyokha/nginx-haskell-module
?

Ilya
18.05.2018
16:20:02

Alexander
18.05.2018
16:20:36

Yuriy
18.05.2018
16:20:39

Alexander
18.05.2018
16:20:43
да

Ilya
18.05.2018
16:20:45

Google

Антон
18.05.2018
19:46:06
Напомните, которые векторы надо использовать (какие не текут)?
И ещё, какие есть заметные отличия Data.Vector и Data.Array (которые мутабельные)?
А то мне для решения прям именно мутабельный массив нужен, а я не знаю, что использовать

Alexander
18.05.2018
19:55:01
из пакета vector
там есть мутабельные, storable или unboxed не накапливают санки

Антон
18.05.2018
19:56:02

Alexander
18.05.2018
19:56:24
оптимизациями, количеством функций, адекватностью интерфейса
причин использовать array в 2!14 году нету

Антон
18.05.2018
19:57:04

Alexander
18.05.2018
19:57:25
у вектором могут быть проблемы со сверхспециализацией
но если до этого дойдешь, то увидишь

Oleg
18.05.2018
21:17:29

Alexander
18.05.2018
21:18:06
на там он инлайнит бывает слишком много, файл раздувает и все тормозит

Oleg
18.05.2018
21:19:08
У Array приколько, что можно всякими тюплами и енумами индексить на автомате
Полезно, наверное, только в олимпиадках

Alexander
18.05.2018
21:39:17
главное что тот же самый Ix можно и с вектором использовать
чуть больше бойлерплейта только

Denis
18.05.2018
22:01:46
https://128.84.21.199/pdf/1805.06798.pdf

Yuriy
19.05.2018
06:04:23
оффтопик

Anton
19.05.2018
07:36:54
@qnikst, я уже раз 10 перепроверил, но похоже в мастере network-transport-tcp лежит не та версия, что на хакадж загружена. https://github.com/haskell-distributed/network-transport-tcp/blob/master/src/Network/Transport/TCP.hs#L577

Google

Alexander
19.05.2018
07:38:04
так, пни вечером, я сейчас уезжаю, мне казалось что Факундо выкладывал последнюю

Anton
19.05.2018
07:38:18
оок

Alexander
19.05.2018
07:38:37
вообще у наших есть дурацкая привычка бампать версию перед релизом
что несказанно бесит

kana
19.05.2018
07:53:06

Yuriy
19.05.2018
07:57:12

Rudi
19.05.2018
08:10:44
/stat@combot

Combot
19.05.2018
08:10:45
combot.org/chat/-1001043143583

Ilya
19.05.2018
10:58:06
А нет расширения для dict comprehension, чтоб как в питоне можно было?

Oleg
19.05.2018
11:04:16
fromList [ (k,v) | ...]

Yuriy
19.05.2018
11:08:59
с OverloadedLists можно будет убрать одно слово

Ilya
19.05.2018
11:10:38

Yuriy
19.05.2018
11:15:37
ещё можно написать функцию (-:) = (,), чтобы спрятать скобки [k1 -: v1, k2 -: v2]

Oleg
19.05.2018
11:17:42

IC
19.05.2018
11:18:11

Ilya
19.05.2018
11:18:27

Yuriy
19.05.2018
11:18:56

Oleg
19.05.2018
11:19:00
скажут, что скалист ещё

Google

Ilya
19.05.2018
11:21:37
придумай любой другой
вот такой можно ещё
λ> fromList [1 ~> 1, 2 ~> 4, 3 ~> 9]
fromList [(1,1),(2,4),(3,9)]

Oleg
19.05.2018
11:22:19

kir
19.05.2018
11:23:43
Wait, натуральная трансформация из 1 в 2?

Oleg
19.05.2018
11:25:37
знать бы ещё, что за функтор такой 2
по аналогии это должно быть 1 + 1
типа data 2 a = 2 Bool a

Ilya
19.05.2018
11:27:19
^ опять ботаны шутят...
А я тем временем добавил короткий алиас для fromList, и получилась вообще красота
dct [1 ~> 1, 2 ~> 4, 3 ~> 9]

kir
19.05.2018
11:28:59
Почему не dict?

Ilya
19.05.2018
11:29:31
можно вообще d

Yuriy
19.05.2018
11:41:48
а если
pattern a :- b = (a, b)
то ещё и в обратную сторону будет работать

IC
19.05.2018
11:57:39
что у нас нынче с сабтайпингом? open-union адо брать, vinyl или ещё что-то?

Alexander
19.05.2018
12:15:19
от Влада норм пакет был, винил тоже норм только тормозной

IC
19.05.2018
12:19:49
как найти на хакадже "от влада"?

Alexander
19.05.2018
12:38:59
там все пакеты автора есть

IC
19.05.2018
12:50:42
ещё бы знать какому из авторов соответствует влад.. протыкал в общем списке четырёх и не нашёл

Maxim
19.05.2018
13:04:10
https://hackage.haskell.org/user/int_index

Антон
19.05.2018
13:21:32

Alexander
19.05.2018
13:22:32
есть либы с ними, но они были с адским апи