Why You Need This.
The compiler you will build will make heavy use of type unions to orgainze the
compiler information. Types, semantic information, the symbol table records, and constant
storage will all be defined in terms of (tagged) type unions. Many programmers (especially
C programmers) are not familiar with unions and tagged unions.