@amszmidt @weekend_editor @cstross Why is it hard?
I found it hard to write a Forth cross compiler. My mental block was mostly that the same symbol may refer to three different things depending on context. In a way, boostrapping a language using itself can be more confusing than doing it from another language.