Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
7
Task/Y-combinator/Python/y-combinator-1.py
Normal file
7
Task/Y-combinator/Python/y-combinator-1.py
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
>>> Y = lambda f: (lambda x: x(x))(lambda y: f(lambda *args: y(y)(*args)))
|
||||
>>> fac = lambda f: lambda n: (1 if n<2 else n*f(n-1))
|
||||
>>> [ Y(fac)(i) for i in range(10) ]
|
||||
[1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880]
|
||||
>>> fib = lambda f: lambda n: 0 if n == 0 else (1 if n == 1 else f(n-1) + f(n-2))
|
||||
>>> [ Y(fib)(i) for i in range(10) ]
|
||||
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
|
||||
1
Task/Y-combinator/Python/y-combinator-2.py
Normal file
1
Task/Y-combinator/Python/y-combinator-2.py
Normal file
|
|
@ -0,0 +1 @@
|
|||
Y = lambda f: lambda *args: f(Y(f))(*args)
|
||||
1
Task/Y-combinator/Python/y-combinator-3.py
Normal file
1
Task/Y-combinator/Python/y-combinator-3.py
Normal file
|
|
@ -0,0 +1 @@
|
|||
Y = lambda b: ((lambda f: b(lambda *x: f(f)(*x)))((lambda f: b(lambda *x: f(f)(*x)))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue