metaclass: (Default)
[personal profile] metaclass
(#(% %) #(% %)) - StackOverflow на кложуре
((fn [x] (x x)) (fn [x] (x x))) - StackOverflow на кложуре (более явная запись предущего)
на хаскеле даже на \x -> x x сразу ругается тайпчекер

(λx.xx)(λx.xx) - это оно же?

Date: 2012-10-11 07:53 pm (UTC)
From: [identity profile] lomeo.livejournal.com
В статических можно эмулировать с помощью изоморфных типов. Например, определив тип
newtype F a = F (F a → a)

мы получили тип изоморфный F a → a, т.е. тип, который можно применять к себе. А значит можем написать \x → x x как \(F f) → f (F f)), а полный Y-комбинатор как
y = (\(F f) → f (F f)) (F (\(F f) → f (F f)))

Date: 2012-10-11 07:54 pm (UTC)
From: [identity profile] lomeo.livejournal.com
Главное — не пытаться прочесть это вслух! :-)

Date: 2012-10-12 05:33 am (UTC)
From: [identity profile] nivanych.livejournal.com
Надо перевести на латынь.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 25th, 2025 05:30 am
Powered by Dreamwidth Studios