Skip to content

Instantly share code, notes, and snippets.

@zeptometer
Created September 1, 2011 10:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zeptometer/1185941 to your computer and use it in GitHub Desktop.
Save zeptometer/1185941 to your computer and use it in GitHub Desktop.
wwwwv ; \abcd.a
wv ; id
ww ; \xy.xy
WWwv
ww ; \xy.yx
Wwwv
wwww ; \mnfx.mf(nfx) := plus
WWWww
Www
WWWWWWwwww
Wwwv
w ; \nfx.nf(nfx) := double
WWw
Wwwwv
w
WWWwwwww ; plus1
Wwwwwww ; 2
WWw ; 3
WWWw ; 4
WWWWWWw ; 8
WWWWWWWWwww
Www
WWWWWWWWWWw
Wwwwww
WWWWWWWWWWWwwwww
WWWWWWWWWWWWwwww
WWWWWWWWWWWWWwww
WWWWWWWWWWWWWWwww
WWWWWWWWWWWWWWWw
WWWWWWWWWWWWWWWWWWwww
Wwwwwwwwwwwwwww
WWWWWWWWWWWWWWWWWWWwwwwwwww
Www
WWWWWWWWWWWWWWWWWWWWWWWWwwwwwwwwwwwwwwwwwwwwwwww
Wwwwwwwwwwwwwwwwwwwwwwwwwwwwww
WWwwwwwwwwwwwwwwwwwwwwwwwwwwwww
WWWWWWWWWWWWWWWw
Wwww
WWWWWWWWWWWwww
Www
WWWWWWWWWWWWwwwww
Wwwwwwww
WWWWWWWWWWWWWWWWWwwwwwww
Www
WWWWWWWWWWWWWWWWWWwwwwwwwww
Www
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWwwwwwwwwwww
Www
WWWWWWWWWWWWWWWWwwwwwwwwwwwww
Wwwwwwwwwwwwwwww
WWWWWWWWWWWWWWWWWwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
Wwwwwwwwwwwwwww
WWwwwwwwwww
WWWww
WWWWwwwwwwwwwwwwwww
WWWWWww
WWWWWWwwww
WWWWWWWww
WWWWWWWWwwww
WWWWWWWWWww
WWWWWWWWWWwwwwwwwwwwwww
WWWWWWWWWWWWWWWWWWWWWWWWWWWWwwwwwwwwwww
Wwww
WWwwwwwwwwwwwwwwwwww
WWWww
WWWWwwwwwwwwwwwwwwwwwwwwwwww
WWWWWww
WWWWWWwwwwwww
WWWWWWWww
WWWWWWWWwwwwww
WWWWWWWWWww
WWWWWWWWWWwwwwww
WWWWWWWWWWWwwwwwwwwwwwwwwwwwwwwwww
((:ABS 4 NIL) ; \xyzw.x
(:ABS 1 NIL) ; \x.x
(:ABS 2 ((:APP 1 0))) ; \xy.xy == \fx.fx := 1 [x::y::xy]
(:ABS 2 ((:APP 0 1))) ; \xy.yx [x::y::yx]
(:ABS 4 ((:APP 2 1) ; \mnfx.mf(nfx) := plus [m::n::f::x::nf::nfx::mf::mf(nfx)]
(:APP 0 1)
(:APP 5 3)
(:APP 0 1)))
(:ABS 1 ((:APP 1 0) ; \mfx.mf(mfx) := double [m::\nfx.mf(nfx)::\fx.mf(mfx)]
(:APP 0 1)))
; a
(:ABS 1 ((:APP 2 4) ; ::\nfx.f(nfx) := plus1 [1+]
(:APP 0 5) ; ::1+ 1 := 2
(:APP 1 0) ; ::1+ 2 := 3
(:APP 2 0) ; ::1+ 3 := 4
(:APP 5 0) ; ::double 4 := 8
(:APP 7 2) ; ::plus 3 := 3+
(:APP 0 1) ; ::3+ 8 := 11
(:APP 9 0) ; ::plus 11 := 11+
(:APP 0 4) ; ::11+ 4 := 15
(:APP 10 4) ; ::double 8 := 16
(:APP 11 3) ; ::double 11 := 22
(:APP 12 2) ; ::double 15 := 30
(:APP 13 2) ; ::double 16 := 32
(:APP 14 0) ; ::double 32 := 64
(:APP 17 2) ; ::(\xy.yx)30 := \x.x30
(:APP 0 13) ; ::2 30 := 2 30
(:APP 18 7) ; ::plus 15 := 15+
(:APP 0 1) ; ::15+
(:APP 23 23) ; ::
(:APP 0 28)
(:APP 1 28)
(:APP 14 0)
(:APP 0 2)
(:APP 10 2)
(:APP 0 1)
(:APP 11 4)
(:APP 0 6)
(:APP 16 6)
(:APP 0 1)
(:APP 17 8)
(:APP 0 1)
(:APP 29 10)
(:APP 0 1)
(:APP 15 12)
(:APP 0 14)
(:APP 16 42)
(:APP 0 13)
(:APP 1 8)
(:APP 2 1)
(:APP 3 14)
(:APP 4 1)
(:APP 5 3)
(:APP 6 1)
(:APP 7 3)
(:APP 8 1)
(:APP 9 12)
(:APP 27 10)
(:APP 0 2)
(:APP 1 17)
(:APP 2 1)
(:APP 3 23)
(:APP 4 1)
(:APP 5 6)
(:APP 6 1)
(:APP 7 5)
(:APP 8 1)
(:APP 9 5)
(:APP 10 22))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment