Pattern matching makes tuples really useful.  Sometimes you just want to return a pair of values and you don&#39;t feel like making a one off constructor for it.<br><br>Eg: random :: (RandomGen g, Random a) =&gt; g -&gt; (a, g).  Without tuples you&#39;d have to have a one off type data RandomGenWithRandom g a  = RGWR g a, which is overkill, when you just wanted two values.<br>
<br><div class="gmail_quote">On Mon, Aug 27, 2012 at 9:47 PM, Carlos J. G. Duarte <span dir="ltr">&lt;<a href="mailto:carlos.j.g.duarte@gmail.com" target="_blank">carlos.j.g.duarte@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Sorry if this question is too insane, but I was wondering if tuples are really needed in Haskell. I mean, could tuples be generally replaced by variables unroll (f x y z) and explicit data types, or are there some things only possible to do via tuples?<br>

<br>
Thx in advance (and sorry if this looks silly).<br>
<br>
<br>
______________________________<u></u>_________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org" target="_blank">Beginners@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/beginners" target="_blank">http://www.haskell.org/<u></u>mailman/listinfo/beginners</a><br>
</blockquote></div><br>