A64m
а Foundation норм, кстати?
там автор тоже со странностями
Quet
Foundation была бы ок если бы уже не было bytestring/text
Quet
переизобретать строки в 3-й раз это пожалуй слишком
A64m
а, ну ввод-вывод еще проблемный, но нормальный тоже пока еще не изобрели
Quet
и наверное концептуально это правильно (строки должны быть частью стандартной библиотеки/прелюдии) но в существующих реалиях не прокатит (
Quet
вот она - цена того что изначально не сделали нормально
A64m
так и нельзя было нормально сделать с самого начала
Quet
почему?
Quet
нормальные строки запилить изначально было невозможно?
A64m
конечно невозможно
A64m
в хаскеле не было инструментария нормального для того чтоб строки не были просто какой-то инородной библиотекой, функции для которой надо квалифицированно импортировать и вот этого вот всего, только если их списками сделать
Quet
а какой для этого нужен особый инструментарий?
A64m
ну хоть какой-то. модули какие-нибудь, ассоциированные типы, синонимы паттернов
Quet
без этого нельзя сделать условный Text и сунуть его в стандартную библиотеку?
A64m
а смысл?
Quet
чтобы пользовались им (очевидно)
A64m
в прелюдии для него функций не будет, они со списковыми конфликтуют по именам. Делать с ними то что с другими встроенными типами можно - т.е. матчить например - нельзя.
A64m
даже анбоксед массивов нету, через которые их можно было бы объявить
A64m
т.е. просто совершенно отдельная и инородная библиотека, в большей степени инородная чем text когда он был написан
Alexander
а Foundation норм, кстати?
кастомные прелюдии плохие, все
Quet
если массивов нет
A64m
имплементировать моглибы конечно, но как бы это смотрелось при изобретении языка?
Alexander
в котором FFI появилось не сразу
A64m
хаскель был в принципе ущербным и для такого не предназначенным.
Alexander
надо все таки сесть и начать писать очередную prelude!
Alexander
чтобы была ещё одна плохая
A64m
да, кстати, ффи то первые 20 лет не было в языке, только как расширения компиляторов
A64m
но, конечно, почти все время существования языка и нестандартные анпакнутые строки были
Alexander
FastString FTW
Dmitrii
просто ломатель уже написанного кода с 0 пользой от этого
Все разработчики внутренние не любят identity, никому это не нравятся, им не удобно, чуть ли не убить себя хотят после использования identity. Никто не был за identity. Вот и пришлось поменять.
Dmitrii
_никто кроме меня, но мой голос не решает_
Ignat
Интересные у вас методологии
Alexander
а потом для простоты через них переизобрести не частичные
Alexander
(шутка)
Alexander
fmap concat . sequence можно на что-то попроще заменить?
A64m
по поводу ничего нет - могли бы уже добавить нормальные версии частичных функций, вроде head
так это решено в линзах более-менее сносно, не как в пакете safe, где одним оператором выбираем частичные они будут (и в этом случае даже стектрейс будет) или мейби/список/дефолтное значение возвращать
Denis
из-за этого приходится везде линзы тащить или изобретать одно и то же и писать развесистую лапшу
A64m
так без такого подхода только уродство с 6 видами каждой функции
Denis
я бы предпочел пару видов в base
Denis
если линзами пользоваться - можно игнорировать
A64m
ну и ничего такого линзы не тащат, чего средняя альтернативная прелюдия не тащит
A64m
поэтому вообще непонятно, зачем они так все цепляются за заведомо ущербный и устаревший подход
кана
писать функции вместо линз для получения значения из значения - устаревший подход? Что именно устаревший подход?
A64m
линзы и есть функции, т.е. писать убогие, морально устаревшие функции типа тех что для Container из универсума или там неудобные "тотальные" функции для разбора списков вместо удобных модно-молодежных функций как в lens.
Denis
ну и ничего такого линзы не тащат, чего средняя альтернативная прелюдия не тащит
Я с этим не сравниваю. Мне понятно желание держать модуль с реэкспортами и хелперами в проекте, просто чтобы меньше однообразных импортов было. А альтернативные прелюдии на hackage это дно какое-то.
A64m
да
Alexander
с другой стороны на hackage они могут меинтейниться и использоваться 3rd party
Alexander
а не гнить в кодобазе устаревая и т.п.
Alexander
т.к. очевидное поведение?
Alexander
это только предположиние
Alexander
Allen в ФП комплите, силы стороны зла увеличились
A64m
в какой-то прелюдии емнип одно время аргументы у фолдла были пересталены, это не универсум был?
Alexander
вот похоже на то
Anatolii
lf
Anatolii
да
Anatolii
именно там
Anatolii
я не понимаю зачем переставлять и не понимаю зачем потом ломать обратную совместимость
Anatolii
с такими изменениями надо мажорную весию апать что-ли
A64m
ну короче говоря, этот универсум позволяет пережить заново потрясающее ощущение от прочтения Дилевского материала ну да, ну да, ну да, ШТОА?!! ДА ЧТО С ТОБОЙ НЕ ТАК_ТО? ну да, ну да
кана
я не понимаю зачем переставлять и не понимаю зачем потом ломать обратную совместимость
зачем переставлять в (a -> b -> b) понятно, так намного чаще получается в поинтфри
Anatolii
да я готов был жить с переставленными
Alexander
переставленные аргументы в foldl это тихий ужас
Anatolii
я не готов к ошибкам компиляции на ровном месте
A64m
в случае сноймановского творчества как-то плавно двигаешься по равнораспределенному слою сноймановских странностей, а тут так раз и удар мешком из-за угла, хотя секунду назад ничего не предвещало
Alexander
есть всетаки какие то стандарты
Denis
ожидаем пропорционально больше вони
кана
кана
там тоже flatMap/flatten делать не хотят из-за некого легаси, которому 10 лет
Alexander
а книжку с цитатами Клапауция ещё никто не выпустил
кана
и из-за этого smoosh/smooshen(?)
Alexander
тут такие прекрасные цитаты, я бы рядом с физики шутят оставил
Dmitry
Теориекатегорщики шутят.
Dmitry
И 20 страниц стрелочек