<div class="gmail_quote">On Wed, May 6, 2009 at 7:44 PM, Daniel Peebles <span dir="ltr">&lt;<a href="mailto:pumpkingod@gmail.com">pumpkingod@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Keep in mind that using lists for your parameters means you lose<br>
static guarantees that you&#39;ve passed the correct number of arguments<br>
to a function (so you could crash at runtime if you pass too few or<br>
too many parameters to a function).<br>
<div><div></div><div class="h5"></div></div></blockquote><div><br>Yes, program will crash with error &quot;Pattern match failure&quot; or smth like that. And yes, doLam is just an id with restricted type. My solution is close to what seems the most common way of passing arguments in Scheme, and the payoff is Scheme&#39;s dynamic typing...<br>
<br>This solution is not the Haskell way and should be avoid.<br><br>--<br>Victor Nazarov<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div class="h5"><br>
On Wed, May 6, 2009 at 11:41 AM, Nico Rolle &lt;<a href="mailto:nrolle@web.de">nrolle@web.de</a>&gt; wrote:<br>
&gt; super nice.<br>
&gt; best solution for me so far.<br>
&gt; big thanks.<br>
&gt; regards<br>
&gt;<br>
&gt; 2009/5/6 Victor Nazarov &lt;<a href="mailto:asviraspossible@gmail.com">asviraspossible@gmail.com</a>&gt;:<br>
&gt;&gt; On Tue, May 5, 2009 at 8:49 PM, Nico Rolle &lt;<a href="mailto:nrolle@web.de">nrolle@web.de</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hi everyone.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I have a problem.<br>
&gt;&gt;&gt; A function is recieving a lambda expression like this:<br>
&gt;&gt;&gt; (\ x y -&gt; x &gt; y)<br>
&gt;&gt;&gt; or like this<br>
&gt;&gt;&gt; (\ x y z a -&gt; (x &gt; y) &amp;&amp; (z &lt; a)<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my problem is now i know i have a list filled with the parameters for<br>
&gt;&gt;&gt; the lambda expression.<br>
&gt;&gt;&gt; but how can i call that expression?<br>
&gt;&gt;&gt; [parameters] is my list of parameters for the lambda expression.<br>
&gt;&gt;&gt; lambda_ex is my lambda expression<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; is there a function wich can do smth like that?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; lambda _ex (unfold_parameters parameters)<br>
&gt;&gt;<br>
&gt;&gt; Why not:<br>
&gt;&gt;<br>
&gt;&gt; lam1 = \[x, y] -&gt; x &gt; y<br>
&gt;&gt; lam2 = \[x, y, z, a] -&gt; (x &gt; y) &amp;&amp; (z &lt; a)<br>
&gt;&gt;<br>
&gt;&gt; doLam :: Ord a =&gt; ([a] -&gt; Bool) -&gt; [a] -&gt; Bool<br>
&gt;&gt; doLam lam params = lam params<br>
&gt;&gt;<br>
&gt;&gt; So, this will work fine:<br>
&gt;&gt;<br>
&gt;&gt; doLam lam1 [1, 2]<br>
&gt;&gt; doLam lam2 [1,2,3,4]<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Victor Nazarov<br>
&gt;&gt;<br>
</div></div><div><div></div><div class="h5">&gt; _______________________________________________<br>
&gt; Haskell-Cafe mailing list<br>
&gt; <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
&gt; <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
&gt;<br>
</div></div></blockquote></div>