<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Lazy Evaluation (and in contrast, Eager Evaluation)</title><link>http://blogs.msdn.com/ericwhite/pages/Lazy-Evaluation-_2800_and-in-contrast_2C00_-Eager-Evaluation_2900_.aspx</link><description>[Table of Contents] [Next Topic] One of the most important concepts in LINQ is the notion of lazy evaluation. Without this facility, LINQ would perform very poorly. Query expressions operate on some type that implements IEnumerable&amp;lt;T&amp;gt;. The variable</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Eric White's Blog : Query Composition using Functional Programming Techniques in C# 3.0</title><link>http://blogs.msdn.com/ericwhite/pages/Lazy-Evaluation-_2800_and-in-contrast_2C00_-Eager-Evaluation_2900_.aspx#8620606</link><pubDate>Thu, 19 Jun 2008 10:08:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8620606</guid><dc:creator>Eric White's Blog : Query Composition using Functional Programming Techniques in C# 3.0</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/ericwhite/pages/FP-Tutorial.aspx"&gt;http://blogs.msdn.com/ericwhite/pages/FP-Tutorial.aspx&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>re: Lazy Evaluation (and in contrast, Eager Evaluation)</title><link>http://blogs.msdn.com/ericwhite/pages/Lazy-Evaluation-_2800_and-in-contrast_2C00_-Eager-Evaluation_2900_.aspx#8689426</link><pubDate>Fri, 04 Jul 2008 17:25:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8689426</guid><dc:creator>Marv Schwartz</dc:creator><description>&lt;p&gt;So is this what is really happening? Query composition sets up a chain of IEnumerable&amp;lt;T&amp;gt; objects--the queries. Starting with the final query in the chain, each query requests the next item from the immediately preceding query.&lt;/p&gt;
&lt;p&gt;The first query in the chain returns its first item which is passed back transformed, and possibly filtered out as it moves through the chain.&lt;/p&gt;
&lt;p&gt;When an item is filtered out, that query reverses direction and gets the next item.&lt;/p&gt;
&lt;p&gt;To get the next item a query calls the MoveNext() and Current() methods of the immediately preceding query. Reset() is propagated from the final query to the first query in the chain.&lt;/p&gt;
&lt;p&gt;This description would really benefit from a picture.&lt;/p&gt;
</description></item><item><title>Closures</title><link>http://blogs.msdn.com/ericwhite/pages/Lazy-Evaluation-_2800_and-in-contrast_2C00_-Eager-Evaluation_2900_.aspx#8945789</link><pubDate>Fri, 12 Sep 2008 05:46:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8945789</guid><dc:creator>Eric White's Blog</dc:creator><description>&lt;p&gt;Closures are one of the key components in C# 3.0 that makes functional programming easy, and results&lt;/p&gt;
</description></item><item><title>Using LINQ to Query Excel Tables</title><link>http://blogs.msdn.com/ericwhite/pages/Lazy-Evaluation-_2800_and-in-contrast_2C00_-Eager-Evaluation_2900_.aspx#9072414</link><pubDate>Fri, 14 Nov 2008 18:00:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9072414</guid><dc:creator>Eric White's Blog</dc:creator><description>&lt;p&gt;[Blog Map] Excel has a very cool feature where you can declare that a range of cells is a table. It is&lt;/p&gt;
</description></item></channel></rss>