<div dir="ltr"><div><div>Your question gave me a simple usage example that I just encountered. It is trivial.<br></div><br>Instead of:<br><br></div><div>case check_something() of<br></div><div>ok -><br></div><div>  ok;<br></div><div>_ -><br></div><div>  exit(error)<br></div><div>end.<br></div><div><br></div><div>You can write:<br></div><div>[ exit(error) || check_something() /= ok ].<br></div><div><br><br></div><div>Sergej<br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Sep 2, 2015 at 1:46 AM,  <span dir="ltr"><<a href="mailto:lloyd@writersglen.com" target="_blank">lloyd@writersglen.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Sergei,<br>
<br>
But if X is defined outside the list comprehension, isn't it immutable?<br>
<br>
Can you show me an example that works?<br>
<br>
Thanks,<br>
<br>
Lloyd<br>
<div class="HOEnZb"><div class="h5"><br>
-----Original Message-----<br>
From: "Sergej Jurečko" <<a href="mailto:sergej.jurecko@gmail.com">sergej.jurecko@gmail.com</a>><br>
Sent: Tuesday, September 1, 2015 11:33am<br>
To: <a href="mailto:lloyd@writersglen.com">lloyd@writersglen.com</a>, "erlang-questions" <<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a>><br>
Subject: Re: [erlang-questions] Tried this... Thought it interesting... But it didn't work.<br>
<br>
Both X and Y must be defined outside that list comprehension.<br>
<br>
<br>
Sergej<br>
<br>
<br>
<br>
<br>
<br>
On 01/09/15 17:30, "<a href="mailto:erlang-questions-bounces@erlang.org">erlang-questions-bounces@erlang.org</a> on behalf of <a href="mailto:lloyd@writersglen.com">lloyd@writersglen.com</a>" <<a href="mailto:erlang-questions-bounces@erlang.org">erlang-questions-bounces@erlang.org</a> on behalf of <a href="mailto:lloyd@writersglen.com">lloyd@writersglen.com</a>> wrote:<br>
<br>
>So, I ran across this tidbit in the Erlang cybersphere:<br>
><br>
>List Comprehension without generators<br>
><br>
><a href="http://blog.equanimity.nl/blog/2015/03/15/erlang-one-weird-trick-goodiebag/" rel="noreferrer" target="_blank">http://blog.equanimity.nl/blog/2015/03/15/erlang-one-weird-trick-goodiebag/</a><br>
><br>
>1> Y = 3.<br>
>3<br>
>2> Z = [X || Y > 2].<br>
>* 1: variable 'X' is unbound<br>
><br>
>OK.So I tried...<br>
><br>
>-module(test).<br>
><br>
>-compile(export_all).<br>
><br>
>test(Y) -><br>
>  [ X || Y > 2].<br>
><br>
>>3 test:test().<br>
>Error: variable 'X' is unbound<br>
><br>
>Waah...is someone pulling my leg?<br>
><br>
>This worked...<br>
><br>
>4> Z = [X || X <- [Y >2]].<br>
><br>
>But it seems rather pointless.<br>
><br>
>I didn't check to see if the original post was dated circa April 1.<br>
><br>
>Best wishes,<br>
><br>
>LRP<br>
><br>
><br>
><br>
>_______________________________________________<br>
>erlang-questions mailing list<br>
><a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
><a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br>
<br>
<br>
</div></div></blockquote></div><br></div>