code: function (value, node) {
          var i, el;
          var valid = (typeof value === "object" && value instanceof Array);
          if (valid) {
              var pos = 0;
              for (i = 0; i < node.elements.length; i++) {
                  el = node.elements[i];
                  var found = 0;
                  while (found < el.arity[1] && pos < value.length) {
                      if (!this.exec_spec(value[pos], el.element))  /*  RECURSION  */
                          break;
                      found++;
                      pos++;
                  }
                  if (found < el.arity[0]) {
                      valid = false;
                      break;
                  }
              }
              if (pos < value.length)
                  valid = false;
          }
          return valid;
      }
docs: /*  validate array type