Size: a a a

2020 October 29

VD

Velvet Darkness in Haskell
Kirill Valyavin
Подробнее - это покажите коммиты с лажой, которую пришлось потом удалить, и выписку из хистори браузера с гуглением
Ух, если заранее не предупреждать, то тут бы я обломился. Я всю лажу после того как заработает выпиливаю ребейзами.
источник

і

іва in Haskell
Alexander Vershilov
как сделать [a] -> [(a,Bool)] , так чтобы false у последнего эл-та
zip x ((const True <$> drop 1 x)++[False])

но можно лучше?
Я человек простой, мне рекурсию проще читать, если она записана как рекурсия
f [] = [] 
f [x] = [(x,False)]
f (x:xs) = (x,True) : f xs
источник

KV

Kirill Valyavin in Haskell
Ну так с предупреждением, какие проблемы
источник

AV

Alexander Vershilov in Haskell
іва
Я человек простой, мне рекурсию проще читать, если она записана как рекурсия
f [] = [] 
f [x] = [(x,False)]
f (x:xs) = (x,True) : f xs
Этот вариант даже не рассматривается
источник

і

іва in Haskell
Alexander Vershilov
Этот вариант даже не рассматривается
слишком боринг или есть объективные причины?
источник

KV

Kirill Valyavin in Haskell
В хаскелле не котируют явную рекурсию
источник

KV

Kirill Valyavin in Haskell
Это типа не идиоматично и не полиморфно
источник

IK

Ilya Kos in Haskell
Kirill Valyavin
В хаскелле не котируют явную рекурсию
Чево
источник

AV

Alexander Vershilov in Haskell
іва
слишком боринг или есть объективные причины?
Отдельная функция, которую приходится записывать на toplevel
источник

IK

Ilya Kos in Haskell
Ну лично я не использую явную рекурсию только потому что буков много, но мне она кажется такой же идиоматичной, как и всякие фолды (если не более идиоматичной)
источник

KV

Kirill Valyavin in Haskell
Ilya Kos
Чево
Настолько ненавидят, что даже есть отдельный пакет recursion-schemes, но это конечно только для самых хардкорных хейтеров
источник

KV

Kirill Valyavin in Haskell
Ilya Kos
Ну лично я не использую явную рекурсию только потому что буков много, но мне она кажется такой же идиоматичной, как и всякие фолды (если не более идиоматичной)
В коде с фолдом есть идиома - фолд
А в коде с рекурсией нет
источник

IK

Ilya Kos in Haskell
Kirill Valyavin
Настолько ненавидят, что даже есть отдельный пакет recursion-schemes, но это конечно только для самых хардкорных хейтеров
AbstractVisitorFactoryPatternInterface
источник

IK

Ilya Kos in Haskell
Kirill Valyavin
В коде с фолдом есть идиома - фолд
А в коде с рекурсией нет
Это называется функция
источник

IK

Ilya Kos in Haskell
Вполне себе идиома
источник

KV

Kirill Valyavin in Haskell
Ilya Kos
Это называется функция
Да, в хаскелле идиомы хорошо выражаются функциями
источник

і

іва in Haskell
Ilya Kos
AbstractVisitorFactoryPatternInterface
там другие ругательства приняты) анаморфизмы, катаморфизмы, параморфизмы и прочее
источник

VD

Velvet Darkness in Haskell
/me лупит явную рекурсию в куче мест и не переживает
источник

IK

Ilya Kos in Haskell
іва
там другие ругательства приняты) анаморфизмы, катаморфизмы, параморфизмы и прочее
Да, я аналогию привёл чтобы было более явно
источник

VD

Velvet Darkness in Haskell
А всё потому что я путаюсь в порядке аргументов у фолда и в разновидностях фолдов >_>
источник