<p dir="ltr">I think the classic text is SICP (Structured Interpretation of Computer Programs). This can be downloaded for free.</p>
<p dir="ltr">If you still do .Net stuff, maybe worth switching to F# to force you more into a functional approach. </p>
<p dir="ltr">> For example I am doing this a lot:<br>
><br>
> let $result := some-func()<br>
> let $a := if($result eq 0)<br>
> then()<br>
> else(logger:log($result),error())<br>
><br>
> It just doesn't feel right.</p>
<p dir="ltr">Sequences are the key. One approach is to just map/transform on sequences, if you have an empty sequence then nothing happens, else you get the expected result ;-)</p>
<p dir="ltr">><br>
> -c<br>
><br>
><br>
><br>
> ________________________________<br>
><br>
> The contents of this message may be privileged and confidential. Therefore, if this message has been received in error, please delete it without reading it. Your receipt of this message is not intended to waive any applicable privilege. Please do not disseminate this message without the permission of the author.<br>

><br>
> Please consider the environment before printing this e-mail<br>
><br>
><br>
> _______________________________________________<br>
> <a href="mailto:talk@x-query.com">talk@x-query.com</a><br>
> <a href="http://x-query.com/mailman/listinfo/talk">http://x-query.com/mailman/listinfo/talk</a><br>
</p>