A compiler for cool language and an emacs major mode