future(): Token {
        if (this.stack.length === 0) {
            this.pushToken(this.lexer.lex());
        }
        return this.stack[this.stack.length - 1];
    }
Returns the topmost token on the stack, without expanding it.
Similar in behavior to TeX's `\futurelet`.