169 похожих чатов

FoldThese1 :: Monoid m => [These m b] -> These

m [b]
foldThese1 [] = This mempty
foldThese1 (x:xs) = fmap ($[])
$ foldl'
(\a b -> case a of
This xa -> case b of
This ya -> This (xa <> ya)
That _ -> This xa
These ya _ -> This (xa<>ya)
That xb -> case b of
This ya -> This ya
That yb -> That (xb .(yb:))
These ya yb -> These ya (xb .(yb:))
These xa xb -> case b of
This ya -> This (xa <> ya)
That yb -> These xa (xb .(yb:))
These ya yb -> These (xa<>ya) (xb .(yb:))) (fmap (\t -> (t:)) x) xs

А вот такое адищще как-то проще же выражается?
Смысл мы проходимся по всем веткам, собираем все ошибки (Here (This a, These a), если среди данных не было таких, где только ошибка (This) то собираем все There (That b, These _ b), ну и за 1 проход это

2 ответов

5 просмотров

https://hackage.haskell.org/package/these-1.1/docs/Data-These.html - эти These?

foldMap1 pure ? (Ну заменить просты списки на дифф-листы)

Похожие вопросы

Обсуждают сегодня

Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
А случайно нет ли в паскале штатной возможности передать указатель и количество туда где array of в качестве аргумента?
zamtmn
25
> комьюнити я бы не судил по этому чату. Как мы видели по статам просмотров нескольких телеговских постов, то в чате их набивается 30-40 или даже выше, когда как общаются акти...
Constantin F.
4
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Как сделать чтобы short точно был 2 байта, int точно 4 байта ?(без стандартных библиотек, ну типа без int16_t, int32_t)
#
8
Всем привет. Испытываю проблемы в работе БД, а именно огромного роста логов, такого характера: 024-05-16 18:39:07 +05 sentry sentry [unknown] 1050169 7-1 app-sentry01.corp.ru>...
Alexey
2
Ну раз я пока тут, задам пару глупых вопросов. Зачем писать на ассемблере если компилятор довольно умный, а ассемблер много времени занимает? В каких прикладных задачах сейчас...
Максим Рябцев
20
Только такой if ($modx->event->name == 'OnBeforeCartItemAdding') { $meta = $params['item']['meta']; $lang = $modx->getConfig('_lang'); // проверяем, задана ли опция i...
Multi Web
1
Хм. А телеграм апи работают через HTTP?
The Bird of Hermes
14
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Карта сайта