Skip to content

Instantly share code, notes, and snippets.

@fitzgen
Created August 26, 2009 22:49
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fitzgen/175914 to your computer and use it in GitHub Desktop.
Save fitzgen/175914 to your computer and use it in GitHub Desktop.
var fibonacci = function () {
var memo = [0, 1];
var fib = function (n) {
var result = memo[n];
if (typeof result !== 'number') {
result = fib(n-1) + fib(n-2);
memo[n] = result;
}
return result;
}
return fib;
}();
var memoizer = function (memo, fundamental) {
var shell = function (n) {
var result = memo[n];
if (typeof result !== 'number) {
result = fundamental(shell, n);
memo[n] = result;
}
return result;
};
return shell;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment