Lexing and compiling types aren't mixed anymore. After drawing some class diagrams, I guess this could become beautiful.