<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
<font style="" face="Courier New">foldl and foldr are defined as follows:</font><font style="" face="Courier New"><br></font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :: (a -&gt; b -&gt; b) -&gt; b -&gt; [a] -&gt; b</font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldr f e []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =&nbsp; e</font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldr f e (x : xs)&nbsp;&nbsp; =&nbsp; f x (foldr f e xs)</font><font style="" face="Courier New"><br></font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :: (b -&gt; a -&gt; b) -&gt; b -&gt; [a] -&gt; b</font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldl f e []&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =&nbsp; e</font><font style="" face="Courier New"><br></font><font style="" face="Courier New">&nbsp; foldl f e (x : xs)&nbsp;&nbsp; =&nbsp; foldl f (f e x) xs</font><font style="" face="Courier New"><br></font><font style="" face="Courier New"><br>1.&nbsp; I understand how these definitions work, and yet I'm unable to implement foldl in terms of foldr.&nbsp; What's a systematic approach to identifying such an implementation, and what is the implementation?<br><br>2.&nbsp; I believe that the reverse implementation--namely, implementing foldr in terms of foldl--is impossible.&nbsp; What's the proof of that?<br><br>3.&nbsp; Any advice on how, aside from tons of practice, to develop the intuition for rapidly seeing solutions to questions like these would be much appreciated.&nbsp; The difficulty a newbie faces in answering seemingly simple questions like these is quite discouraging.<br></font><br /><hr />Express your personality in color! Preview and select themes for HotmailŪ.  <a href='http://www.windowslive-hotmail.com/LearnMore/personalize.aspx?ocid=TXT_MSGTX_WL_HM_express_032009#colortheme' target='_new'>See how.</a></body>
</html>