包详细信息

thunk

jayferd5.4k0.0.1

A generator for trampoline-evaluated recursive algorithms

自述文件

Thunk

Usage:

var thunk = require('thunk');

var factorial = thunk.makeTrampoline(function(recurse) {
  return function(cc, n) {
    if (n <= 1) return cc(1);

    return recurse(function(result) { return cc(n * result) }, n - 1);
  };
});

factorial(5) // 120, with a constant stack size.  Aww, yiss.