code: function executable(value) {
        var result;
        try {
          result = resolve(task.apply(this, arguments));
        } catch (e) {
          result = reject(e);
        }
        return result;
      }
docs: return a result from the function