a toy language with ADT and pattern matching