Size: a a a

Elm Lang сообщество разработчиков

2019 August 06

AK

Anton Kotenko in Elm Lang сообщество разработчиков
но может есть что-то из ядра языка, что я упускаю
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Типа Result.map3, но попробовать все комбинации
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Очень stringly typed :)
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Кортеж нельзя фолдить, потому что это не коллекция
источник

R:

Ryner :: () -> IO ❄️ in Elm Lang сообщество разработчиков
Aleksei (astynax) Pirogov
Кортеж нельзя фолдить, потому что это не коллекция
Что очень странно
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Кортеж, это тип-произведение
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Ничего странного
источник

R:

Ryner :: () -> IO ❄️ in Elm Lang сообщество разработчиков
В хаскеле вроде есть fold для Map k v
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Казалось бы, при чём здесь кортеж?
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
У Map k v фолдится v. Это один параметр
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
У кортежа много параметров
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
И все разные в общем случае. Потому что кортеж, это не коллекция, повторяю.
источник

R:

Ryner :: () -> IO ❄️ in Elm Lang сообщество разработчиков
А, тупль
источник

R:

Ryner :: () -> IO ❄️ in Elm Lang сообщество разработчиков
Ох уж эти русский термины
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Aleksei (astynax) Pirogov
Очень stringly typed :)
это разбор урла, поэтому)
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Anton Kotenko
tryDecode3
    : String
   -> String
   -> String
   -> (String -> Result err a)
   -> (String -> Result err b)
   -> (String -> Result err c)
   -> (a -> b -> c -> d)
   -> Result err d


можно ли такое как-то упростить? задача попробовать на трёх строках по очереди все декодеры и если в какой-то комбинации удалось, то отдать результат в функцию
Я бы разделил на два шага — первый пусть композит три декодера в один, принимающий три строки в нужном порядке. А второй уже пермутации делает пускай
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Пока что так
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Aleksei (astynax) Pirogov
Я бы разделил на два шага — первый пусть композит три декодера в один, принимающий три строки в нужном порядке. А второй уже пермутации делает пускай
интересная мысль
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Anton Kotenko
Пока что так
ад'hoc какой-то :)
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
прошу прощения
источник