code: function parseUnary() {
                      var token, expr;
  
                      token = lexer.peek();
                      if (matchOp(token, '-') || matchOp(token, '+')) {
                          token = lexer.next();
                          expr = parseUnary();
                          return new MathLib.Expression({
                              subtype: 'unaryOperator',
                              value: token.value,
                              content: expr
                          });
                      }
  
                      return parsePrimary();
                  }
docs: Unary ::= Primary | '-' Unary