Functions to create ADTs and do pattern matching, as well as Enumerator based Monad computation
Will Pleasant-Ryan
Apache