Yeah. Reverse engineering a grammar you can give to a parser generator from a hand crafted parser is a fun and occasionally horrifying experience. There&#x27;s nothing quite like discovering that<p><pre><code>    loop @a
        ...
    endloop
</code></pre>
means start the loop labeled a but<p><pre><code>    loop
        @a
        ...
    endloop
</code></pre>
means start a loop, the first statement of which refers to attribute a, but that this is the only use of labels in the language where these two cases are parsed differently...