All streams
Search
Write a publication
Pull to refresh
13
0.4
Send message

Не за что. Пишите ещё. Например про комонады или про монадические трансформеры.

В вашем тексте есть утверждение, что функтор в категорию из одного объекта переводит все морфизмы в id. В общем случае это неверно.

Категория из одного объекта не обязана иметь только морфизм id .

Получится комонада, если получится, так как простой функториальности недостаточно. Вообще двойственность в категориях иногда играет злую шутку в стиле "комонада она такая же как монада, только ко".

Очень круто, снимаю шляпу.
Но, задумайтесь, вы слушаете лекцию или записывает за лектором?
Некоторые учёные утверждают что связь зрения, слуха и письма (именно письма), улучшает усваивание материала.

Эта игра имеет равновесие Нэша в смешанных стратегиях. В силу симметрии средний выигрыш — 0.

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

Простите, а в чём смысл этого мероприятия?
Чистой стратегии выигрыша нет.

По ту сторону экрана сидит эффект Барнума.

Пусть А влечёт за собой Б, тогда А лежит в Б, тогда мера А не превосходит меры Б, тогда вероятность А не больше вероятности Б.

Статья замечательная.
В "Отлична от нуля лишь мера сплошного отрезка, пусть даже очень маленького." Лишь — лишнее.

Перечитал, подумал, ещё раз перечитал, взял карандаш.
Это не IO. Это — Reader.
Об этом я не подумал. Но, можно ещё внедрять зависимости наоборот. Вставлять калбеки из чистых функций в монадические вычисления. Тогда, если дело ограничивается return.f, то можно давать некоторые гарантии. Но, как только вы заменили сигнатуру f с возвращающей a на IO а, так сразу возможен биг бадамум.
Упс, видимо с первой попытки не так понял, возражение снимается.
Опять смешаны кадрирование и частичное применение.
Если вы выполняете вычисление в монаде, то оно имеет доступ к побочным эффектам этой монады.
В первом варианте при вычислении c' может произойти всё что угодно, поскольку оно выполняется в IO (надеюсь то, что на месте return.to Upper может быть любое вычисление вида IO Char понятно).
Если вы засунете калбек с типом IO a глубоко внутрь вычисления и захотите там достать из него a, то у Вас всё вычисление будет в монаде IO, и гарантировать что там кроме Вашего калбека больше ничего не произошло вы не сможете.
Таким образом внутрь чистого вычисления, чтобы оно оставалось чистым, можно передавать только иммутабельные аргументы.
Нет это не одно и тоже. Всё что вычисляется в монаде IO имеет доступ к побочным эффектам ввода-вывода.
сравните
c<-getChar
c'<-return.toUpper $ c
putChar c'

и
c<-getChar
let c'=toUpper c
putChar c'

Странно всё это. На сколько я понимаю концепция состоит не в том чтобы отложить вычисления с побочными эффектами, а в том чтобы отделить их.
Если тебе нужно что-то из IO достань его, а потом положи в чистую функцию.
Счетчик 16 битный, но применяется по модулю размера памяти команд.
Память команд и память данных у авра разные.
И до кучи — нету на голом железе ни кучи ни стека.
Можно быстрее. Запрещяете прерывания и пишите через всю память порт 0, порт 1. Счетчик команд циклический, а порт, если мне не изменяет память, по умолчанию — out. получаете меандр на половине тактовой частоты.

Information

Rating
2,102-nd
Registered
Activity