code: function() {
      var op
        , node = this.equality();
      while (op = this.accept('is a')) {
        this.operand = true;
        if (!node) this.error('illegal unary "' + op + '", missing left-hand operand');
        node = new nodes.BinOp(op.type, node, this.equality());
        this.operand = false;
      }
      return node;
    }
docs: equality ('is a' equality)*