<div>Hello,<br>I find this whole discussion very much helpful.<br><br>Ertugrul said: <br><br></div><blockquote style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">Monads, while being less general, are more expressive.<br>




</blockquote><br>This statement is rather counter-intuitive for me.<br><br>Here is another statement regarding generality and expressiveness:<br><div style="margin-left:40px">If we consider DFA and PDA, for instance, PDA is more general and more expressive than DFA. <br>


</div><br>Can we say that because PDA is more general than DFA, PDA is more expressive than DFA.<br>
As per the normal understanding the more general a machine becomes, the more expressive it is.<br>
<br>So, in what exact sense are you using the terms &quot;general&quot; and &quot;expressive&quot; w.r.t. Monads and Arrows?<br><br>Another thing:<br><ul><li>Is it because Monads are more expressive they are more difficult to compose (as is the case of the DFA automaton) ?</li>



<li>Is it because Arrows are less expressive they are easier to compose ?</li></ul>
But then, a more general thing will make it more difficult for us to make it composible in a yet larger scheme of things.<br><br>Am I missing something here?<br><br>Thanks and regards,<br>-Damodar Kulkarni<br><br><br><div class="gmail_quote">


On Sat, Jun 2, 2012 at 5:32 PM, Ertugrul Söylemez <span dir="ltr">&lt;<a href="mailto:es@ertes.de" target="_blank">es@ertes.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>Rustom Mody &lt;<a href="mailto:rustompmody@gmail.com" target="_blank">rustompmody@gmail.com</a>&gt; wrote:<br>
<br>
&gt; &gt; I have started an arrow tutorial which many people found easy to<br>
&gt; &gt; follow. It&#39;s not finished yet, but since so many people found it<br>
&gt; &gt; useful I&#39;m sharing that unfinished tutorial:<br>
&gt; &gt;<br>
&gt; &gt;    &lt;<a href="http://ertes.de/new/tutorials/arrows.html" target="_blank">http://ertes.de/new/tutorials/arrows.html</a>&gt;<br>
&gt; &gt;<br>
&gt; &gt; It answers the most important questions:  What?  Why?  How?  To some<br>
&gt; &gt; extent it also answers:  When?  But I have to work on that question.<br>
&gt;<br>
</div><div>&gt; As usual this is useful and I&#39;ll be studying it in more detail.  For<br>
&gt; now a general question: What do you think of *teaching* Haskell<br>
&gt; replacing monads with arrows in the early introduction?<br>
<br>
</div>According to my experience the same rule that applies to monads also<br>
applies to arrows.  In other words:  If you can teach monads, you likely<br>
also can teach arrows.  If you can&#39;t teach monads, don&#39;t try to teach<br>
arrows either.<br>
<br>
My current position is that understanding applicative functors and<br>
monads makes it much easier to learn arrows.  But there is also strong<br>
evidence that teaching arrows first might be useful, building on the<br>
correspondence between Category+Applicative and Arrow.  I have not<br>
tried this though.<br>
<br>
About my approach to teaching monads there has been a discussion on<br>
Reddit recently:<br>
<br>
    &lt;<a href="http://www.haskell.org/pipermail/haskell-cafe/2012-May/101338.html" target="_blank">http://www.haskell.org/pipermail/haskell-cafe/2012-May/101338.html</a>&gt;<br>
    &lt;<a href="http://www.reddit.com/r/haskell/comments/u04vp/building_intuition_for_monads_without_mentioning/" target="_blank">http://www.reddit.com/r/haskell/comments/u04vp/building_intuition_for_monads_without_mentioning/</a>&gt;<br>





<div><div><br>
<br>
Greets,<br>
Ertugrul<br>
<br>
--<br>
Key-ID: E5DD8D11 &quot;Ertugrul Soeylemez &lt;<a href="mailto:es@ertes.de" target="_blank">es@ertes.de</a>&gt;&quot;<br>
FPrint: BD28 3E3F BE63 BADD 4157  9134 D56A 37FA E5DD 8D11<br>
Keysrv: hkp://<a href="http://subkeys.pgp.net/" target="_blank">subkeys.pgp.net/</a><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://www.haskell.org/mailman/listinfo/beginners" target="_blank">http://www.haskell.org/mailman/listinfo/beginners</a><br>
<br></blockquote></div><br><br clear="all"><br><br>