【文件属性】:
文件名称:Lambda:一个简单的 lambda 演算评估器
文件大小:6KB
文件格式:ZIP
更新时间:2021-06-30 02:30:58
Haskell
Lambda:一个 lambda 演算化简器/评估器
试试教会数字:
\> 0 = \f.\x.x
\f.\x.x
\> S = \n.\f.\x.f(nfx)
\n.\f.\x.f(nfx)
\> 1 = S0
\f.\x.fx
\> 2 = S1
\f.\x.f(fx)
\> 3 = S2
\f.\x.f(f(fx))
\> + = \n.\m.nSm
\n.\m.n(\n'.\f.\x.f(n'fx))m
\> + 2 3
\f.\x.f(f(f(f(fx))))
\> + 2 1
\f.\x.f(f(fx))
\> 3
\f.\x.f(f(fx))
\> * = \n.\m.n(+m)0
\n.\m.n(\m'.m(\n'.\f.\x.f(n'fx))m')(\f.\x.x)
\> * 3 2
\f.\x.f(f(f(f(f(fx)))))
\> * 2 2
\f.\x.f(f
【文件预览】:
Lambda-master
----LICENSE(1KB)
----src()
--------Parse.hs(1KB)
--------Repl.hs(1KB)
--------Lambda.hs(6KB)
--------main.hs(2KB)
----.gitignore(13B)
----README.md(584B)
----Lambda.cabal(804B)