adding examples for pattern matching and union and enum like expressions for haskell