Changeset 1932 for lang/unlambda/impl
- Timestamp:
- 11/23/07 14:39:31 (6 years ago)
- Files:
-
- 1 modified
-
lang/unlambda/impl/in_python/unlambda_oneliner.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/unlambda/impl/in_python/unlambda_oneliner.py
r1931 r1932 26 26 # Node 27 27 28 Dot = lambda char:lambda c:c( 29 lambda X,c:sys.stdout.write(char)or c(X)) 30 Apply = lambda nX,nY:lambda c:\ 31 lambda:nX(lambda X: 32 lambda: 33 (X == D_)and( 34 c(lambda Y,c:nY(lambda X:c(lambda X,c:X(Y,c)))) 35 )or( 36 nY(lambda Y:lambda:X(Y, c)))) 28 D_ = lambda c:c(D_) 29 V=lambda X,c:c(V) 37 30 38 D_ = lambda c:c(D_) 39 lambda V=lambda X,c:c(V):V 40 41 Y = lambda f:((lambda g: f(lambda x: g(g)(x))) 42 (lambda g: f(lambda x: g(g)(x)))) 43 44 p = Y(lambda _parse: lambda iter:{ 31 parse = (lambda Dot, Apply:(lambda s: (lambda f:((lambda g: f(lambda x: g(g)(x))) 32 (lambda g: f(lambda x: g(g)(x)))))(lambda _parse: lambda iter:{ 45 33 "i": lambda:lambda c:c(lambda X,c:c(X)), 46 34 "d": lambda:D_, … … 62 50 ".": lambda: Dot(iter.next()), 63 51 "`": lambda: Apply(_parse(iter), _parse(iter)), 64 }.get(iter.next(), lambda: _parse(iter))()) 52 }.get(iter.next(), lambda: _parse(iter))())(list(s).__iter__())))( 65 53 66 parse = lambda s: p(list(s).__iter__()) 67 54 (lambda char:lambda c:c( 55 lambda X,c:sys.stdout.write(char)or c(X))), # dot 56 (lambda nX,nY:lambda c:\ 57 lambda:nX(lambda X: 58 lambda: 59 (X == D_)and( 60 c(lambda Y,c:nY(lambda X:c(lambda X,c:X(Y,c)))) 61 )or( 62 nY(lambda Y:lambda:X(Y, c))))) # apply 63 ) 68 64 69 65 # Main loop
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)