
Mekhrubon
14.05.2018
21:37:19
да, в сорцах как раз и комент такой есть
спасибо

Maxim
15.05.2018
06:34:18
Народ. Есть список [a], я делаю по нему traverse_ функцией a -> IO (), причём для всех элементов списка кроме не более одного функция превращается в return (). Можно как-то после этого одного элемента сделать break?
Короче задача найти в списке нужный элемент, если он есть, и сделать с ним какое-то ио

Imants
15.05.2018
06:40:17
Может, разделить эти 2 шага:
1) найти нужный элемент чистой ф вне ио
2) ио с этим элементом
?

Google

Aragaer
15.05.2018
06:40:53
filter + head, а потом io

Maxim
15.05.2018
06:43:11
Гм, filter. Вечно забываю про ленивость!

Nikolay
15.05.2018
06:48:25
Вот у нас есть категория Hask. В ней объекты все типы без дырок? Т.е Maybe Int, [Int] тоже объекты в ней ?

Евгений
15.05.2018
06:53:20

Nikolay
15.05.2018
06:56:33
А как понимать return в монаде? Это морфизмом откуда и куда?
Я про то, что return умеет объект Int перевести в maybe int. Значит ли это что это морфизмом в исходной категории?

Dmitry
15.05.2018
07:05:33
А исходная -- какая?

λoλcat
15.05.2018
07:11:52
Т.к. ты остаешься в Hask

Alexander
15.05.2018
07:12:23

Alexander
15.05.2018
07:14:53

Nikolay
15.05.2018
07:14:54
Т.к. ты остаешься в Hask
Если у меня функтор maybe, то я перехожу в подкатегории Hask. В ней объекты maybe с конкретным типом. Например просто int там уже нет

Ilya
15.05.2018
07:16:25
Это не отменяет того, что ты останешься в Hask

Google

Nikolay
15.05.2018
07:17:42

Ilya
15.05.2018
07:18:17

Alexander
15.05.2018
07:18:37
а у WT как всегда прекрасный пост: https://well-typed.com/blog/2018/05/ghc-special-gc-objects/

Ilya
15.05.2018
07:19:16
Например функция возведения в квадрат действует из R в R, но образ R получается меньше R (только неотрицательные).
Аналогично, функтор не обязан "покрывать" всю категорию, в которую он отображает
Это вообще-то к теории категорий даже отношения не имеет

Nikolay
15.05.2018
07:21:01
Но мы вводим категорию как пятерку. И соответственно я бы предположил, что если у нас у нас есть 2 разных пятерки, то это разные категории

Oleg
15.05.2018
07:21:40

Nikolay
15.05.2018
07:21:55
В нашем случае объектов становится меньше. Значит и морфизмом меньше.

Oleg
15.05.2018
07:22:14

Nikolay
15.05.2018
07:23:02
А какое тогда определение тождественности категорий?
Должно быть определение тождественности, что бы сказать , что категории таковы

Ilya
15.05.2018
07:24:02
full functor не имеет?
Это в любой книжке по алгебре объясняется на первых же страницах (различие между F(X) и Y, для F: X -> Y)
И не важно, будет F функтором, функцией, чем угодно

Oleg
15.05.2018
07:24:46
Т.е. для не-локально -маленькой категории это может служить в лучшм случае интуицией
Но вообще, я не с этим спорил
Я спорил с тем, что понятия full /faithful не важны для теорката. Ну или как ты сформулировал "не имеют отношения к нему".
Возможно, я неправильно понял посыл

Евгений
15.05.2018
07:29:00

Oleg
15.05.2018
07:30:19
Ааааа сорян посоны, перечитал исходный посыл

Google

Oleg
15.05.2018
07:30:55
Мы говорим не о full/не full. Мы говорим о том, что у функтора не все объекты в образе

Евгений
15.05.2018
07:31:37
Ну да, его смущает, что образ меньше исходной категории

Oleg
15.05.2018
07:32:13
Ну тут сложно сказать "меньше"
Так-то вроде в не слишком заумных языках тайп-конструкторы инъективны

Ilya
15.05.2018
07:33:49

Oleg
15.05.2018
07:33:52
Т.е. в случае эндофунктора для тайп-конструктора мы получаем "такой же по размеру"

Евгений
15.05.2018
07:33:53

Ilya
15.05.2018
07:35:30

Nikolay
15.05.2018
07:35:56
Главный вопрос - return это морфиз откуда и куда ?

Ilya
15.05.2018
07:36:12

Oleg
15.05.2018
07:36:21

Alexander
15.05.2018
07:36:22

Oleg
15.05.2018
07:36:49

Евгений
15.05.2018
07:39:34
a -> f a?
Ну нет, такого типа a (точнее он есть, но я бы не стал стрелки forall a. a -> f a объявлять морфизмами между forall a.a и forall a. f a). Лучше сказать, что return это семейство морфизмов

Nikolay
15.05.2018
07:39:39
Да. Вот fmap - это отображение морфизмов. А return это он что наьоро исходных объектов отображает в набор каких объектов?

Ilya
15.05.2018
07:39:59

Oleg
15.05.2018
07:40:16

Nikolay
15.05.2018
07:40:48
У каждого морфизма есть dom . Что для returna домен ?

Oleg
15.05.2018
07:41:00

Google

Oleg
15.05.2018
07:41:18

Ilya
15.05.2018
07:42:05

Oleg
15.05.2018
07:44:08

Евгений
15.05.2018
07:48:12

Oleg
15.05.2018
07:50:49
Вооо, #яжговорил
ну в разном контексте это может быть морфизмом, семейством, индесированном объектом или объектом-и-эндофунктором

Евгений
15.05.2018
07:53:07
Ну я говорил про контекст обсуждения.
Вообще большие проблемы с этими введениями с этими ассоциациями haskell-теоркат. Надо бы один раз написать правильную денотационную семантику с dcpo-enriched 2-категориями и отсылать к ней.
По крайней мере от всех известных мне ловушек интерпретации это поможет
Или нет :(

Pavel
15.05.2018
08:08:07


Андрей
15.05.2018
08:09:07
Тайпклассопедия для начала, как референс

Leonid
15.05.2018
08:16:11
разве какой-нибудь Coq не удобнее для веселья с теоркатом?

Pavel
15.05.2018
08:17:25

Alex
15.05.2018
08:18:05
Coq (фр. coq — петух) — интерактивное программное средство доказательства теорем

Pavel
15.05.2018
08:20:08
о как, есть какие-то рекомендуемые ресурсы чтоб это посмотреть / опробовать ?

Grigory
15.05.2018
08:21:19
и был какойто бложик русский старый на жж про кок; мне в свое время помог
если найду вброшу

Pavel
15.05.2018
08:22:02

Grigory
15.05.2018
08:22:44
и коку оч близок f* (к галлине видимо надо говорить (Gallina)) ; он по современее; правда не пруф асистант вообще

Google

Евгений
15.05.2018
08:24:13

Александр
15.05.2018
08:25:01

Leonid
15.05.2018
08:25:15
опять трудности себе выдумываете. Лишь бы на хаскеле не писать

Dmitry
15.05.2018
08:25:24
лишь бы теоркат не изучать

Евгений
15.05.2018
08:25:25

Leonid
15.05.2018
08:26:08
какой смысл от теорката в хаскеле, когда hask не категория?

Евгений
15.05.2018
08:26:25
Hask — dcpo-enriched категория
Плюс если "забыть" все термы без нормальной формы, то категория

Leonid
15.05.2018
08:27:16
Вот вечно админы с яваскриптерами за теоркат топят.
А потом у людей искаженные представления о реальности

Dmitry
15.05.2018
08:27:49
согласен
но топикстартеру теоркат или хаскель?

Евгений
15.05.2018
08:27:58

Leonid
15.05.2018
08:28:24
В реальности в хаскеле будешь мучаться с исключениями и дедлоками. И еще с забытыми бангами в полях.

Александр
15.05.2018
08:28:31
Самый простой способ хапнуть заблуждений насчет Хаскеля - это думать, что нужен какой-то там теоркат или прочий матан, напороться на сложности, вообще не связанные с изучением Хаскеля, и бросить его.

Евгений
15.05.2018
08:28:50

Leonid
15.05.2018
08:29:33

Евгений
15.05.2018
08:30:18
Вообще я за то, чтобы отсюда прогоняли в теоркаточат

Leonid
15.05.2018
08:30:50

Yuriy
15.05.2018
08:31:00

Евгений
15.05.2018
08:31:07

Anton
15.05.2018
08:32:13