"A recursive descent parser is used to generate all possible glyphs, which helps with evaluating expressions in encodings (e.g. SET b,(IX+o) takes a bit and a displacement, encoded as expression DD CB o C6+8*b). These encodings were then expanded to all possible values that operands can take, before finally associating 1 or more hexadecimal bytes to each disassembly glyph required to render an expanded instruction."
You said "putting functionality in the wrong places".
The font system does not have any such functionality as z80 disassembly. It has generic functionality for generating glyphs.
If there are any normal human written languages that benefit from the functionality to generate modified glyphs dynamically based on content and context rules, then the functionality is not misplaced.
Of course it’s useful for human languages. Using it to disassemble Z80 hex dumps is what I have mostly aesthetic objections against. It’s both fascinating that it can be done and horrifying that someone actually did it.
That's just evil! Great job!