Инхабитаты зашкаливающих порядков

Jan 24, 2017 20:22

Инхабитация fmap для монад Cont и Sel - мой любимый дополнительный вопрос на экзамене. Справитесь?
? :: (a -> b) -> ((a -> r) -> r) -> ((b -> r) -> r) ? :: (a -> b) -> ((a -> r) -> a) -> ((b -> r) -> b) Чтобы помучить студентов посильнее я предлагаю проинхабитировать (<*>) для Cont:
? :: (((a -> b) -> r) -> r) -> ((a -> r) -> r) -> ((b -> r) -> r ( Read more... )

haskell

Leave a comment

Comments 11

max630 January 24 2017, 18:24:42 UTC
> Частным случаем духовной одержимости является инхабитация диббука

(c) гугль по слову "инхабитация"

Reply

deni_ok January 24 2017, 19:10:56 UTC
Бгг, и вызов джинна тоже в эту струю!

Reply


nponeccop January 24 2017, 21:48:23 UTC
> Инхабитаты

прочитал "ихтамнеты"

Reply


thesz January 25 2017, 14:54:05 UTC
Слабо использовать новомодный термин "населить"?

Reply

deni_ok January 25 2017, 16:59:59 UTC
Населить звучит так, как будто тип пока пустует. Лучше уж так: найти законного обитателя. А инхабитат просто смешное слово.

Reply

ulysses4ever January 25 2017, 23:54:15 UTC
Насилянт?

Reply

deni_ok January 26 2017, 08:09:45 UTC
Нет-нет, на этом пути легко вляпаться в дистинкцию между гендером и полом! Вот тайпчекинг можно переводить как проверку прописки/регистрации. А Y-комбинатор - лицо без гражданства, но в некоторых версиях типов-пересечений получает нансеновский паспорт.

Reply


akuklev January 25 2017, 17:48:27 UTC
Спасибо за развлечение. :-)

1) Минута, пока воткнул в сигнатуру и сообразил чего от меня требуется.
2) Пара секунд по аналогии.
3) Минуты две-три.
4) Минуты четыре-пять.

Не вижу причин, почему бы задание 4 было как-то существенно сложнее, чем 3: И там и там можно обойтись кроме аппликации и композиции всего одной лямбдой. Спойлеры не пишу, кто хочет может позвать джина.

Reply

deni_ok January 25 2017, 18:52:35 UTC
Валера тут же предложил двинуться дальше и сделать монадой

((a -> r) -> a) -> s) -> a
и минуты за полторы написал на доске (>>=).

Reply

akuklev January 25 2017, 19:25:55 UTC
Ачо, запросто. Осталось только понять, зачем это нужно. :-)

Reply

deni_ok January 25 2017, 20:13:50 UTC
Чтобы понять как устроен мир, конечно же.

Вот, например, такой обобщенный вопрос: если взять подобный <<ступенчатый>> тип произвольного порядка, накидать разных констант в негативные позиции, а в позитивные - либо тоже константы, либо тип a возвращаемого значения, то всегда ли это будет монадой?

Reply


Leave a comment

Up