[Haskell-cafe] Are arbitrary rank types and existentials equivalent?