code: function nary(binary, args) {
  		var len = args.length;
  		var result = args[0];
  		for (var i = 1; i < len; ++i)
  			result = binary(result, args[i]);
  		return result;
  	}
docs: TODO: this can be improved based on the various observations from the yellow book.