[Haskell] TryTypeCast hackery possible?