Size: a a a

2020 November 09

AA

A64m AL256m qn<co... in Haskell
эх, эйзенберг затормозил апликатив компрехеншонс
источник

AA

A64m AL256m qn<co... in Haskell
мол, мимо процесса идет
источник

NI

Nick Ivanych in Haskell
А компилятор не тормозит?
источник

AA

A64m AL256m qn<co... in Haskell
апликатив-ду сильно тормозит, так что не удивлюсь если тут тоже придерутся
источник

к

кана in Haskell
A64m AL256m qn I0
эх, эйзенберг затормозил апликатив компрехеншонс
ой да и не нужно
источник

AA

A64m AL256m qn<co... in Haskell
нужно
источник

к

кана in Haskell
в чем профит компрехеншенов относительно ду, в том что для гвардов не нужно guard писать, да и все
источник

AA

A64m AL256m qn<co... in Haskell
еще они не выглядят как выблев полупереваренного фортрана
источник

к

кана in Haskell
какая разница как они выглядят, если пользоваться ими все равно никто не будет
источник

AA

A64m AL256m qn<co... in Haskell
почти так же хорошо как брекеты выглядят, да за результатом волочится хвост с байндами, но он за, дальше можно не смотреть
источник

AA

A64m AL256m qn<co... in Haskell
зато страшной перхоти для обычных параметров как в идиом брекетах нет
источник

a

adam in Haskell
кана
Переслано от кана
какой-нибудь

nominal type Value = Int

и чтобы в пределах модуля Value и Int коерсились неявно, пушто это просто алиас, а в других модулях уже нет

такой синтаксис правда еще больше увеличил бы число тайп-аннотаций, да и id-функций пришлось бы больше писать и экспортировать, так что уж лучше такой как есть.

Хотя с другой стороны кода от аннотации не сильно больше, но это пока параметров нет
f :: Value -> a
g :: Int -> a
g x = f (x :: Value)
и
g x = f (Value x)
а когда нужно будет полиморфную функцию вызывать, придется все аннотировать явно в каждом месте для обоих типов

но никаких конструкторов нет при этом, а единственность значения тут чисто из-за того, что алиас не может быть на большее число типов чем 1
пусть роли явно расставляют в таком случае
источник

ЗП

Зигохистоморфный Пре... in Haskell
как это оптимизировать?
pan xs = zip xs (fmap Just (tail xs) ++ [Nothing])

меня смущает ++ и лишний fmap
источник

AV

Alexander Vershilov in Haskell
Я недавно спрашивал :)
источник

IK

Ilya Kos in Haskell
Сделать явную рекурсию?
источник

к

кана in Haskell
а что это у вас за задача общая
источник

AV

Alexander Vershilov in Haskell
Ну я похожую штуку спрашивал
источник

ЗП

Зигохистоморфный Пре... in Haskell
Ilya Kos
Сделать явную рекурсию?
это понятно)
источник

к

кана in Haskell
Alexander Vershilov
Ну я похожую штуку спрашивал
да задача вроде один в один как у тебя все таки

только без зипа
источник

ЗП

Зигохистоморфный Пре... in Haskell
ах) я вспомнил про хитрый класс
источник