<span style="font-family: verdana;">thank you very much for all your Help. I am finally able to do something (O:<br>I watched the video presentation from Edsge W. Dijkstra. It is very helpful. </span><br style="font-family: verdana;">
<span style="font-family: verdana;">thank you once again for providing me the link</span>.<br style="font-family: verdana;"><br style="font-family: verdana;"><span style="font-family: verdana;">I am trying to call a function and print a message.
</span><br style="font-family: verdana;"><br style="font-family: verdana;"><span style="font-family: verdana;">moveLoadR :: Int -&gt; Int&nbsp; -&gt; (IO ()-&gt; a)</span><br style="font-family: verdana;"><span style="font-family: verdana;">
moveLoadR m c &nbsp;&nbsp;&nbsp; | m==0 &amp;&amp; c==0 = moveEndR&nbsp; $ putStrLn &quot;END&quot;</span><br style="font-family: verdana;"><span style="font-family: verdana;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | otherwise = moveLoadR (m-1) (c-1) $ putStrLn &quot;Starting Missionary and Cannibal Game.\nLeft Bank: Missionary=3:Cannibal=3: Moving From: Left ===&gt; Right: Missionary=1 Cannibal=1 
</span><span style="font-family: verdana;">\n&quot;</span><br style="font-family: verdana;"><span style="font-family: verdana;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; </span><br style="font-family: verdana;"><span style="font-family: verdana;"><br>moveEndR :: (IO ()-&gt;a) 
</span><br style="font-family: verdana;"><span style="font-family: verdana;">moveEndR = putStrLn&quot;END OF Solution&quot;&nbsp;&nbsp;&nbsp; &lt;&lt;&lt; === THIS IS INCORRECT.&nbsp; </span><br style="font-family: verdana;"><span style="font-family: verdana;">
<br>I tried doing this . but it will take me to the infinite Loop. <br></span><span style="font-family: verdana;">moveEndR :: (IO ()-&gt;a) </span><br style="font-family: verdana;">
<span style="font-family: verdana;">moveEndR = moveEndR $ putStrLn&quot;END OF GAME&quot;<br><br>Any help in this would be greatly appreciated.<br><br><br></span><br><br style="font-family: verdana;"><br style="font-family: verdana;">
<br style="font-family: verdana;"> <br>.<br><br><br><br><br><br><br><br><div><span class="gmail_quote">On 1/16/07, <b class="gmail_sendername">Paul Johnson</b> &lt;<a href="mailto:paul@cogito.org.uk">paul@cogito.org.uk</a>
&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">This is presumably your homework.&nbsp;&nbsp;See<br><a href="http://www.haskell.org/haskellwiki/Homework_help">
http://www.haskell.org/haskellwiki/Homework_help</a><br><br>This kind of problem is often solved by using the List monad, so try<br>looking at that first.<br><br>Failing that, have a list of moves to make a sequence.&nbsp;&nbsp;Then make a list
<br>of all possible sequences.&nbsp;&nbsp;Then filter out the ones that break the<br>rules.&nbsp;&nbsp;Whatever is left is the answer you want.<br><br>Paul.<br>_______________________________________________<br>Haskell-Cafe mailing list<br><a href="mailto:Haskell-Cafe@haskell.org">
Haskell-Cafe@haskell.org</a><br><a href="http://www.haskell.org/mailman/listinfo/haskell-cafe">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br></blockquote></div><br>