<div dir="ltr"><div class="gmail_default" style="font-family:georgia,serif;font-size:small">Nice!</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small">Just out of curiosity...</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small">I have no trouble accepting that the zipWith3 approach is more idiomatic, but it doesn't appear (to my eye) significantly shorter or significantly more obvious. So are the tradeoffs primarily cultural, or is there another issue that I'm missing?<br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small"><br></div><div class="gmail_default" style="font-family:georgia,serif;font-size:small">Thanks,</div><div class="gmail_default" style="font-family:georgia,serif;font-size:small">-jn-</div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Feb 21, 2015 at 12:04 PM, Chaddaï Fouché <span dir="ltr"><<a href="mailto:chaddai.fouche@gmail.com" target="_blank">chaddai.fouche@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span>On Sat, Feb 21, 2015 at 4:50 PM, Joel Neely <span dir="ltr"><<a href="mailto:joel.neely@gmail.com" target="_blank">joel.neely@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif;font-size:small"><br></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div><font face="monospace, monospace">smooth :: Fractional n => [n] -> [n]</font></div></div><div><div><font face="monospace, monospace">smooth (a:z@(b:c:_)) = (a + b + c) / 3 : smooth z</font></div></div><div><div><font face="monospace, monospace">smooth _             = []</font></div></div></blockquote><br></div></blockquote><div><br></div></span><div>In Haskell, I would write this with higher-order functions though :<br><br></div><div>smooth xs = zipWith3 (\a b c -> (a+b+c)/3) xs (drop 1 xs) (drop 2 xs)<span><font color="#888888"><br><br>-- <br></font></span></div><span><font color="#888888"><div>Jedaï<br></div></font></span></div><br></div></div>
<br>_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org" target="_blank">Beginners@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div>Beauty of style and harmony and grace and good rhythm depend on simplicity. - Plato</div>
</div></div>