<div dir="ltr">+1 for the original proposal.</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Sep 11, 2013 at 2:26 PM, Edward Kmett <span dir="ltr">&lt;<a href="mailto:ekmett@gmail.com" target="_blank">ekmett@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"><div dir="ltr">I&#39;m also rather against `mux`, not only on partiality grounds, but also on the grounds that it is not very easily optimized away.</div>

<div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Sep 11, 2013 at 2:23 PM, Henning Thielemann <span dir="ltr">&lt;<a href="mailto:lemming@henning-thielemann.de" target="_blank">lemming@henning-thielemann.de</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
On Wed, 11 Sep 2013, Greg Fitzgerald wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I&#39;d prefer something more like:<br>
<br>
   mux :: Enum b =&gt; [a] -&gt; b -&gt; a<br>
   mux xs x = xs !! fromEnum x<br>
<br>
so then &#39;bool&#39; could be implemented as:<br>
<br>
   bool :: a -&gt; a -&gt; Bool -&gt; a<br>
   bool f t = mux [f, t]<br>
<br>
but &#39;mux&#39; needs a stronger type signature.  The size of the enum is<br>
known at compile-time.  Is there any way to constrain the input list<br>
</blockquote>
<br></div>
I don&#39;t like a total function to be implemented using a non-total function (!!). Additionally your implementation relies on fromEnum True == 1, which is a bad thing.<div><div><br>
______________________________<u></u>_________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/libraries" target="_blank">http://www.haskell.org/<u></u>mailman/listinfo/libraries</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/libraries" target="_blank">http://www.haskell.org/mailman/listinfo/libraries</a><br>
<br></blockquote></div><br></div>