Which programming language is better for writing a compiler? (For example, Haskell might be the better "functional" language but side effects + OOP might be more convenient for building a symbol table, or one language might have better compiler-specific tooling than the other.)