Nicer syntax
Started work with Template Haskell