CMSC 22300 Homework 5, Due 5/18/2012, 6pm 1. [50] Translate the type checker in the typecheck2 directory into Haskell. Use a monad to implement the newTyVar functionality. Translate all the files making up the type checker, mapping file.sml to file.hs, etc. Use the Counter monad discussed in class on Wednesday, 5/16. 2. [50] Translate the lexer and parser in the simple directoy into Haskell. Implement reader as an instance of the monad constructor class. [Exact file specification will be added shortly.]