История изменений
Исправление Waterlaz, (текущая версия) :
Что херня? Ты же сам и продемонстрировал, что вышло нечитабельное говно. Почему? Потому что синтаксис хаскеля не позволяет оформить подобный код по-человечески. В итоге надо писать однострочники. А чтобы получались однострочники - нужны короткие нейминги.
Напиши код на каком-либо другом языке с «правильными именами», сравним.
Не стеснйся, продемонстрируй как выглядит let внутри if-блока, который сам вложен в let внутри ifa (двукратное вложение, вполне нормальная ситуация, встречающаяся в императивных языках регулярно и не представляющая в них никакой проблемы).
Давай ты сперва напиши что-нибудь на этом твоем императивном языке, а мы уже посмотрим, как это переписать на хаскеле.
Потому что есть большая разница между «просто какойто шаблонный аргумент» и «типовая переменная имеющая вполне конкретный смысл и использующаяся в конкретном контексте».
Так зачем надо было кукарекать про типы-аргументы? ;)
Исходная версия Waterlaz, :
Что херня? Ты же сам и продемонстрировал, что вышло нечитабельное говно. Почему? Потому что синтаксис хаскеля не позволяет оформить подобный код по-человечески. В итоге надо писать однострочники. А чтобы получались однострочники - нужны короткие нейминги.
Напиши код на какои-либо другом языке с «правильными именами», сравним.
Не стеснйся, продемонстрируй как выглядит let внутри if-блока, который сам вложен в let внутри ifa (двукратное вложение, вполне нормальная ситуация, встречающаяся в императивных языках регулярно и не представляющая в них никакой проблемы).
Давай ты сперва напиши что-нибудь на этом твоем императивном языке, а мы уже посмотрим, как это переписать на хаскеле.
Потому что есть большая разница между «просто какойто шаблонный аргумент» и «типовая переменная имеющая вполне конкретный смысл и использующаяся в конкретном контексте».
Так зачем надо было кукарекать про типы-аргументы? ;)