First version of this compiler.
Basically, this is an template with certain class.