de> with <code>lexer</code>, as it&rsquo;s better practice and
    results in less confusion.</li>
    <li>Replace <code>local M = {_NAME = '?'}</code> with <code>local lex = lexer.new('?')</code>, where
    <code>?</code> is the name of your legacy lexer. At the end of the lexer, change
    <code>return M</code> to <code>return lex</code>.</li>
    <li>Instead of defining rules towards the end of your lexer, define your rules
    as you define your tokens and patterns using
    <a href="#lexer.add_rule"><c