Entry tags:
Лямбда, которую мы потеряли
Пара задачек по лямбда-исчислению.
(1) Сконструируйте лямбда-терм F, такой что для любого терма M выполнялось бы
(2) Сконструируйте лямбда-терм G, такой что для любых термов M и N выполнялось бы
Ответы не скринятся, так что если хотите думать сами - не смотрите в комменты.
(1) Сконструируйте лямбда-терм F, такой что для любого терма M выполнялось бы
FM = MF
(2) Сконструируйте лямбда-терм G, такой что для любых термов M и N выполнялось бы
GMN = NG(NMG)
Ответы не скринятся, так что если хотите думать сами - не смотрите в комменты.
no subject
no subject
no subject
Для меня ЛИ - это база, на основе которой скорее всего родится разумная универсальная нотация для записи вычислительных алгоритмов. Потому что современные массовые прикладные языки программирования - это, конечно, что-то типа римских цифр до изобретения арабских. По степени стройности общей концепции :-)
no subject
no subject
По-моему так задачек побольше решать надо: SICP, YAHT стоит прочесть и упражнения прорешать (ну второе, конечно, не такое заслуженно именитое как первое). Первое, кстати, многие люди делают не только на Схеме, но и, параллельно, на Хаскелле.
>Не является ли утопией моя задумка иметь конвертор (Haskell, например) -> (C, например)?
Не очень понятно, зачем. Компилятор GHC сам по себе и есть почти что такой конвертер. И потом Хаскелл всё-таки ленивый язык, ему сишная модель исполнения не очень подходит.
no subject
>Не очень понятно, зачем
В данном случае просто интересно провернуть такую комбинацию:
исходник на Haskell->конвертор->исходник на С->целевое окружение, для которого ещё нет (и скорее всего не будет в ближайшее время) поддержки Haskell runtime.
А эту ленивость можно обойти? Не пользоваться ей, например? Или без ленивости получится как в С без указателей? :-)
no subject
Обойти-то всё можно, только зачем тогда Хаскелл?