Dear Haskellers,

   b) A related suggestion would be the addition of an
>
      irrefutable swap, (swap'?), defined as
>
       "swap ~(a,b) = (b,a)", and its addition to Prelude for
>
      the same reasons.
>

If I define a function that matches on a single-constructor data type, such
as (,), is there any reason against using ~? Like

  f (a,b) = ...

instead of

  f ~(a,b) = ...

? I've seen that not using ~ can lead to problems sometimes, but not the
other way around.

(Of course changing the semantics of existing functions such as `swap` is
problematic, my question targets the problem in general.)

Best regards,
Petr Pudlak
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to