Today I downloaded the GNU Flex source code to help answer a StackOverflow question, and was quite pleasantly surprised to find it was written in Flex/Bison.
Made it super easy to read how it worked. But could be tricky to use as aid for learning flex.
I was also thinking it might make it hard to boot strap to new platform, but I just realised you compile the output code not the flex, to run on the new system, and thus flex already runs on the original platform. Phew, now I’ll sleep better at night, not having to worry about that self referencing loop.