<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Really silly things to do with C# expression trees</title>
	<atom:link href="http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/feed/" rel="self" type="application/rss+xml" />
	<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/</link>
	<description>Just another LosTechies site</description>
	<lastBuildDate>Tue, 19 Mar 2013 10:04:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-44</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 21:08:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-44</guid>
		<description>LULZ, how could you tell :P </description>
		<content:encoded><![CDATA[<p>LULZ, how could you tell <img src='http://lostechies.com/ryanrauh/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-43</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 19:47:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-43</guid>
		<description>Nice to see another RedditorProgrammer.

Derp.</description>
		<content:encoded><![CDATA[<p>Nice to see another RedditorProgrammer.</p>
<p>Derp.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-42</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 16:21:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-42</guid>
		<description>I actually kind of like the prefix notation. I hear thats what most people hate the most about Lisp</description>
		<content:encoded><![CDATA[<p>I actually kind of like the prefix notation. I hear thats what most people hate the most about Lisp</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James C</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-41</link>
		<dc:creator>James C</dc:creator>
		<pubDate>Thu, 03 Nov 2011 16:05:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-41</guid>
		<description>Chad &amp; Sam seem to be on the right path,  but  both seem to go off in an odd direction. I think this combines simplicity, reusablity,  and comes closest to the original lisp code:

https://gist.github.com/1336856

</description>
		<content:encoded><![CDATA[<p>Chad &amp; Sam seem to be on the right path,  but  both seem to go off in an odd direction. I think this combines simplicity, reusablity,  and comes closest to the original lisp code:</p>
<p><a href="https://gist.github.com/1336856" rel="nofollow">https://gist.github.com/1336856</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: thinkbeforecoding</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-40</link>
		<dc:creator>thinkbeforecoding</dc:creator>
		<pubDate>Thu, 03 Nov 2011 15:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-40</guid>
		<description>I made a copy through notepad :-P

For the +, - and other operators  in F# there are two things:
You can simply use it like in a + b, in this case, it is infixed, and you have to provide both operands.
When using it between parentheses, it becomes a simple function, hence prefixed and curryable.

You can define almost any operator like ??, &#124;?, , +-, ~&gt; by defining it between () like I did for ??.
</description>
		<content:encoded><![CDATA[<p>I made a copy through notepad <img src='http://lostechies.com/ryanrauh/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /> </p>
<p>For the +, &#8211; and other operators  in F# there are two things:<br />
You can simply use it like in a + b, in this case, it is infixed, and you have to provide both operands.<br />
When using it between parentheses, it becomes a simple function, hence prefixed and curryable.</p>
<p>You can define almost any operator like ??, |?, , +-, ~&gt; by defining it between () like I did for ??.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-39</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 15:22:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-39</guid>
		<description>That is really awesome! So you can return + or - in F#!

Amazing how I can now read F# and know what its doing, functional FTW! SICP is opening my eyes a lot!

BTW how did you post code in disqus like that?</description>
		<content:encoded><![CDATA[<p>That is really awesome! So you can return + or &#8211; in F#!</p>
<p>Amazing how I can now read F# and know what its doing, functional FTW! SICP is opening my eyes a lot!</p>
<p>BTW how did you post code in disqus like that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: thinkbeforecoding</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-38</link>
		<dc:creator>thinkbeforecoding</dc:creator>
		<pubDate>Thu, 03 Nov 2011 14:32:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-38</guid>
		<description>You can also try F# here :

let (++) a b = (if a &gt; 0 then (+) else (-)) a b

You can then use the infix operator ++ :
3 ++ -5

or : if you want an operator for if then else :
let (!?) x f e = if x then f else e
let (++) a b = (!? (b &gt; 0) (+) (-)) a b

Have F#un !</description>
		<content:encoded><![CDATA[<p>You can also try F# here :</p>
<p>let (++) a b = (if a &gt; 0 then (+) else (-)) a b</p>
<p>You can then use the infix operator ++ :<br />
3 ++ -5</p>
<p>or : if you want an operator for if then else :<br />
let (!?) x f e = if x then f else e<br />
let (++) a b = (!? (b &gt; 0) (+) (-)) a b</p>
<p>Have F#un !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-37</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 11:10:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-37</guid>
		<description>I really like how you composed the 
    
cond ?  then : else 

I know in lisp that you have to be careful because the (if  predicate then else) acts as a special construct that behaves slightly differently. 

I like this method I want to see what will happen if you turned that into some kind of recursive function.  Something really contrived like adding the numbers by incrementing a while decrementing b</description>
		<content:encoded><![CDATA[<p>I really like how you composed the <br />
    <br />
cond ?  then : else </p>
<p>I know in lisp that you have to be careful because the (if  predicate then else) acts as a special construct that behaves slightly differently. </p>
<p>I like this method I want to see what will happen if you turned that into some kind of recursive function.  Something really contrived like adding the numbers by incrementing a while decrementing b</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-36</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 03 Nov 2011 10:54:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-36</guid>
		<description>Nice this seems a lot like chads example. I wasn&#039;t aware the you could just cast a lambda like that 
(Func) (x,y) =&gt; x + y

Kind of interesting actually</description>
		<content:encoded><![CDATA[<p>Nice this seems a lot like chads example. I wasn&#8217;t aware the you could just cast a lambda like that <br />
(Func) (x,y) =&gt; x + y</p>
<p>Kind of interesting actually</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sergey Shishkin</title>
		<link>http://lostechies.com/ryanrauh/2011/11/02/really-silly-things-to-do-with-c-expression-trees/#comment-35</link>
		<dc:creator>Sergey Shishkin</dc:creator>
		<pubDate>Thu, 03 Nov 2011 09:44:00 +0000</pubDate>
		<guid isPermaLink="false">http://lostechies.com/ryanrauh/?p=54#comment-35</guid>
		<description>That&#039;s the reason C# sucks at functional programming. The closest thing to the original Lisp would be this mess:
https://gist.github.com/1336143</description>
		<content:encoded><![CDATA[<p>That&#8217;s the reason C# sucks at functional programming. The closest thing to the original Lisp would be this mess:<br />
<a href="https://gist.github.com/1336143" rel="nofollow">https://gist.github.com/1336143</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
