Size: a a a

2021 May 03

AS

Alexander Smirnov in Haskell
У всех вещей есть имена. Если ты можешь объяснить, как используется та или иная переменная, ты можешь написать ей отвратительноСтрашноеИмяПеременнойКотораяВДанномСлучаеИспользуетсяДляПримера
источник

к

кана in Haskell
окей, есть "короткие общепринятые и известные имена"
источник

AF

Alexey Fedotov in Haskell
А я не перемножал числа. Я вычислял геном слоновьего потомства. У меня есть моноид слонов, и я в нем всё это запускаю.

multiply :: Elephant -> Elephant -> Elephant
multiply mother father = mother * father
источник

DB

Danil Berestov in Haskell
надо было использовать оператор для полугруппы!
источник

к

кана in Haskell
ну так и речь не шла про числа, если моноид мультипликативный, что в данном случае выводится только из оператора, то это все еще умножение, просто не чисел, а моноидальное

умножение в любой мультипликативной алгебре умножение, будь полугруппа, или поле, содержащее мультипликативный моноид
источник

DB

Danil Berestov in Haskell
че значит мультипликативный моноид?
источник

AS

Alexander Smirnov in Haskell
Есть больше 26 коротких и известных однобуквенных имен
источник

AS

Alexander Smirnov in Haskell
В этом и проблема
источник

DB

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

к

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

DB

Danil Berestov in Haskell
просто по-моему слово мультипликаивный ничего не добавляет
источник

к

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

например есть моноид (+, 0) и полугруппа (*). Они связаны законом 0*x = 0 (0 из одного моноида связан с операцией другого). В этом случае, можно называть первый аддитивным, а второй мультипликативным
источник

AS

Alexander Smirnov in Haskell
В этом и есть проблема, что тебе надо разбираться в каждой библиотеке, применение которой ты видишь.

В любом нормальном языке, если ты скажешь, что на интеграцию библиотеки всем, кто когда либо будет работать с проектом, придется потратить несколько дней, на тебя посмотрят как на умалишенного
источник

AS

Alexander Smirnov in Haskell
Это же просто библиотека
источник

DB

Danil Berestov in Haskell
это неправда
источник

AS

Alexander Smirnov in Haskell
Я не буду просить каких-нибудь примеров из жизни, так как мне даже сложно представить себе такую библиотеку в каком то другом языке
источник

AF

Alexey Fedotov in Haskell
А для пользования библиотекой профункторов надо в s t a b лезть? Это самый нижний слой — прямой буквальный перенос аксиом и теорем, чтобы комп мог на их основе автоматически доказывать, что код говно, компилировать нельзя
источник

AS

Alexander Smirnov in Haskell
Но, тем не менее, я ожидаю аргументации хотя бы
источник

AF

Alexey Fedotov in Haskell
дальше разработчики библиотеки должны постепенно снижать абстракцию, по мере того как они подбираются к экспортируемым инструментам
источник

DB

Danil Berestov in Haskell
не надо, конечно
источник