1{-# LANGUAGE UnboxedTuples #-}
2
3foo :: (a, b) -> (# b , a #)
4foo (a, b) =
5  case (# b, a #) of
6    (# b, a #) -> (# , #) b a
7