<div dir="ltr">Hello!<div><br></div><div>To be honest, I always write &quot;fmap&quot; instead of &quot;map&quot; in all my code. Sometimes I change the container I am using, and if I write &quot;map&quot;, then I would have to change that &quot;map&quot; to &quot;Something.map&quot; or just &quot;fmap&quot;. I know for sure that fmap is going to work in any Functor instance, so I don&#39;t have to deal with these things. In some situations (using functions from other classes as well), I only change the type signature of my functions, and the program keeps working as expected, which is awesome.</div>
<div><br></div><div style>Therefore, I support the proposal.</div><div style><br></div><div style>By the way, how strong is the reason &quot;it would be harder to learn&quot;? Is it really that hard to use type classes? I don&#39;t think you need any deep math to understand how to work with type classes in Haskell. Even if they are called &quot;Functor&quot; or &quot;Monad&quot;, you don&#39;t need to know about categories to use them. In fact, any Haskell student faces type classes in some point.</div>
<div style><br></div><div style>In the other hand, I remember that at the beginning somebody showed me that &quot;+&quot; sums integers. And eventually, it worked with floats too. He called this &quot;overloading&quot; and, presented in that way, type classes appeared like something natural in my mind. Can&#39;t the same thing been done in this case?</div>
<div style><br></div><div style>Best regards,</div><div style>Daniel Díaz.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jun 21, 2013 at 11:59 AM, Andrew Butterfield <span dir="ltr">&lt;<a href="mailto:Andrew.Butterfield@scss.tcd.ie" target="_blank">Andrew.Butterfield@scss.tcd.ie</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
On 21 Jun 2013, at 10:51, Nikita Volkov wrote:<br>
<br>
&gt; Since there&#39;s been so many suggestions concerning radically changing the Prelude recently, I&#39;d like to start a poll on a subject.<br>
&gt;<br>
&gt; I know that &quot;map&quot; is limited to lists for the beginners, but then we&#39;re already making a lot of unbeginnerish changes to Prelude. Also it&#39;s not a monad transformer, but just a functor - how can a person learn Haskell without understanding what a Functor is?<br>

<br>
<br>
</div>!!!! No one needs to know what a functor is in order to learn Haskell.<br>
No one needs to know any category theory ideas to learn Haskell.<br>
<br>
Haskell is a very good vehicle to introduce such category-theoretic concepts,<br>
and as someone learns Haskell, learning about Haskell classes(*) such as Functor,<br>
etc, is very important and useful.<br>
<br>
My main reason for this sudden and abrupt response is that I would be worried if<br>
any Prelude re-design was predicated on the idea that Haskell beginners need to understand Functors<br>
 - they don&#39;t, but hopefully they will learn...<br>
<br>
<br>
(*) as distinct from learning about the category theoretic notion of functor.<br>
<div class="im"><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Libraries mailing list<br>
&gt; <a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
&gt; <a href="http://www.haskell.org/mailman/listinfo/libraries" target="_blank">http://www.haskell.org/mailman/listinfo/libraries</a><br>
<br>
</div>--------------------------------------------------------------------<br>
Andrew Butterfield     Tel: +353-1-896-2517     Fax: +353-1-677-2204<br>
Lero@TCD, Head of Foundations &amp; Methods Research Group<br>
Director of Teaching and Learning - Undergraduate,<br>
School of Computer Science and Statistics,<br>
Room G.39, O&#39;Reilly Institute, Trinity College, University of Dublin<br>
                          <a href="http://www.scss.tcd.ie/Andrew.Butterfield/" target="_blank">http://www.scss.tcd.ie/Andrew.Butterfield/</a><br>
--------------------------------------------------------------------<br>
<div class="HOEnZb"><div class="h5"><br>
<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>
</div></div></blockquote></div><br></div>