Skip to content

Commit 3990c95

Browse files
committed
y-combinator for js update
1 parent 9304858 commit 3990c95

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

src/little-schemer/y-combinator.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ var fib = Y(function (fib_t) {
1313
return function (n) {
1414
if (n == 0) return 0;
1515
if (n == 1) return 1;
16-
return fib_t(n-1) + fib_t(n-2);
16+
return fib(n-1) + fib(n-2);
1717
};
1818
});
19+
20+
console.log(fib(10));

src/little-schemer/y-combinator.scm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,10 +253,10 @@
253253
; we define the part that is not related to length/mk-length as Y
254254
; that is y-combinator
255255
(define Y
256-
(lambda (le)
256+
(lambda (g)
257257
((lambda (f) (f f))
258258
(lambda (f)
259-
(le (lambda (x) ((f f) x)))))))
259+
(g (lambda (x) ((f f) x)))))))
260260

261261
(define mk-length
262262
(lambda (length)

0 commit comments

Comments
 (0)