lib/MissMatch.js
function parseNumericLiteral(AST) {
    var literal = [], value;

    while(hasNext() && validNum(peek())) {
      literal[literal.length] = next();
    }

    value = parseFloat(literal.join(''));
    
    /**
     * Thanks to CMS's answer on StackOverflow:
     * http://stackoverflow.com/questions/18082/validate-numbers-in-javascript-isnumeric
     */
    if(!isNaN(value) && isFinite(value)) {
      newNode(value, newNode('=', AST).nodes);
    } else {
        unexpectedTokenException('numeric');
    }
  }
function parseNumericLiteral(AST) {
    var literal = [], value;

    while(hasNext() && validNum(peek())) {
      literal[literal.length] = next();
    }

    value = parseFloat(literal.join(''));
    
    /**
     * Thanks to CMS's answer on StackOverflow:
     * http://stackoverflow.com/questions/18082/validate-numbers-in-javascript-isnumeric
     */
    if(!isNaN(value) && isFinite(value)) {
      newNode(value, newNode('=', AST).nodes);
    } else {
        unexpectedTokenException('numeric');
    }
  }
Parse numeric literals like 1, 1.05, .05, 8e5...