code: function createArray (type, options) {
      // multiple childs, fixed length
      var tests = [];
      var isArray = basic.array.test;
      for (var i = 0, ii = type.length; i < ii; i++) {
        tests[i] = ducktype(type[i]).test;
      }
  
      // create the ducktype
      return new DuckType({
        name: options && options.name || null,
        test: function test (object) {
          // test whether object is an array
          if (!isArray(object)) {
            return false;
          }
  
          // test for correct length
          if (object.length !== tests.length) {
            return false;
          }
  
          // test all childs of the array
          for (var i = 0, ii = object.length; i < ii; i++) {
            if (!tests[i](object[i])) {
              return false;
            }
          }
  
          return true;
        }
      });
  
      // TODO: create an option length, length.min, length.max for the array.
      //       length can be an integer or a function
    }
docs: Create a ducktype handling an array
  @param {Array} type     An array with multiple elements
  @param {{name: String}} [options]
  @returns {*}