<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>FVN Tech Blog &#187; C#</title>
	<atom:link href="http://blog.feuvan.net/tag/csharp/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.feuvan.net</link>
	<description>Interoperability &#124; Coding, Programming in C#/PHP &#124; Linux, Windows Server Backend &#124;  New Media &#124; SNS &#124; Misc ...</description>
	<lastBuildDate>Fri, 06 Aug 2010 00:31:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Peak at C# 4.0: optional parameter, named parameter and method resolution</title>
		<link>http://blog.feuvan.net/2010/04/13/231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html</link>
		<comments>http://blog.feuvan.net/2010/04/13/231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html#comments</comments>
		<pubDate>Mon, 12 Apr 2010 18:52:47 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[dotNET]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2010/04/13/231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html</guid>
		<description><![CDATA[Optional and named parameter is an awesome feature introduced in C# 4.0. Now C# combines some fancy features from dynamic languages like Python again (var knows why I say again. And the more dynamic dynamic is another topic, LOL). Please &#8230; <a href="http://blog.feuvan.net/2010/04/13/231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Optional and named parameter is an awesome feature introduced in C# 4.0. Now C# combines some fancy features from dynamic languages like Python again (<strong>var</strong> knows why I say again. And the more dynamic <strong>dynamic</strong> is another topic, LOL).</p>
<p>Please note the “NEW:” comment for optional parameter declaration and named parameter assignment.</p>
<blockquote><p><code lang="C#"> </code></p>
<p>using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Text;</p>
<p>namespace ConsoleApp<br />
{<br />
class Program<br />
{<br />
static void Main(string[] args)<br />
{<br />
var top = new TestOptionalParameter();<br />
double d = top.Demo(0);  // #1</p>
<p>// int d = top.Demo(0, s: “test”); // NEW: named parameter.<br />
}<br />
}</p>
<p>class TestOptionalParameter<br />
{<br />
public int Demo(int i, string s = &#8220;demo purpose&#8221;) // #2 NEW: optional parameter declaration<br />
{<br />
Console.WriteLine(&#8220;int Demo(int i, string s = \&#8221;demo purpose\&#8221;)&#8221;);<br />
return 0;<br />
}</p>
<p>public double Demo(int i) // #3<br />
{<br />
Console.WriteLine(&#8220;double Demo(int i)&#8221;);<br />
return 0;<br />
}<br />
}<br />
}</p></blockquote>
<p>But when combined with method name resolution, unconsidered condition may occur.</p>
<p>Try these changes and you will realize what you’ll pay for fancy new features: (Play it with VS2010. I don’t want to copy and paste several times and just modify one place of return type or variable value.)</p>
<table border="1" cellspacing="0" cellpadding="2" width="743">
<tbody>
<tr>
<th width="180" valign="top">Change #1</th>
<th width="151" valign="top">Change #2</th>
<th width="197" valign="top">Change #3</th>
<th width="213" valign="top">Why?</th>
</tr>
<tr>
<td width="184" valign="top"></td>
<td width="155" valign="top"></td>
<td width="195" valign="top"></td>
<td width="211" valign="top">Works as expected. Matches 2nd Demo method.</td>
</tr>
<tr>
<td width="185" valign="top">change double to int</td>
<td width="158" valign="top"></td>
<td width="194" valign="top"></td>
<td width="210" valign="top">Easy to understand, the 1st Demo matches better. (Fully match in/out/return parameter, though there’s an optional parameter not specified when invoking the method)</td>
</tr>
<tr>
<td width="185" valign="top">add named parameter. change it to<br />
double d = top.Demo(0, s: “test”);</td>
<td width="160" valign="top"></td>
<td width="193" valign="top"></td>
<td width="210" valign="top">still the 1st Demo matches better. Now named parameter takes place.</td>
</tr>
<tr>
<td width="186" valign="top"></td>
<td width="161" valign="top"></td>
<td width="193" valign="top">change int to double</td>
<td width="210" valign="top">Match 1st. No implicit conversion required for parameter.</td>
</tr>
<tr>
<td width="186" valign="top">change 0 to 0.0</td>
<td width="161" valign="top"></td>
<td width="193" valign="top"></td>
<td width="210" valign="top">Compile error. Explicit conversion required.</td>
</tr>
<tr>
<td width="186" valign="top">change 0 to 0.0</td>
<td width="161" valign="top">change int to double</td>
<td width="193" valign="top"></td>
<td width="210" valign="top">Match 1st. No implicit conversion required for parameter.</td>
</tr>
<tr>
<td width="186" valign="top">Whenever add 2nd string parameter, named with “s” or unnamed.</td>
<td width="161" valign="top"></td>
<td width="193" valign="top"></td>
<td width="210" valign="top">Match 1st.</td>
</tr>
<tr>
<td width="186" valign="top"></td>
<td width="161" valign="top"></td>
<td width="193" valign="top"></td>
<td width="210" valign="top"></td>
</tr>
</tbody>
</table>
<p>Some looks-hard-but-actually-straightforward-and-ideal conclusion:</p>
<ol>
<li>Whenever named or unnamed parameter used, method don’t accept these parameters will be out.</li>
<li>If implicit conversion is NOT required, traditional method resolution goes first, then goes to match methods with optional parameter. (please note there’s some a-bit-evil details to be discussed.)</li>
<li>If implicit conversion is required for parameter or return type, match method with matched implicit parameter first.</li>
<li>When explicit conversion is required or specified error parameter name or value type, compile time error will be triggered.</li>
</ol>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html&amp;title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html&amp;title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html&amp;title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html&amp;headline=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html&amp;title=Peak+at+C%23+4.0%3A+optional+parameter%2C+named+parameter+and+method+resolution&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fblog.feuvan.net%2F2010%2F04%2F13%2F231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2010/04/13/231-peak-at-c-4-0-optional-parameter-named-parameter-and-method-resolution.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2009: A dynamic future of C#</title>
		<link>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html</link>
		<comments>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html#comments</comments>
		<pubDate>Fri, 31 Oct 2008 08:39:46 +0000</pubDate>
		<dc:creator>feuvan</dc:creator>
				<category><![CDATA[Default]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[dotNET]]></category>

		<guid isPermaLink="false">http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html</guid>
		<description><![CDATA[70s coders learn C, Pascal, COBOL(one of the best IT jobs in economic crisis) 80s coders learn C 90s coders learn C++, Java, Delphi 21-century (long time no see this hot word during 1999-2001)  coders learn C#? - A homemade &#8230; <a href="http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>70s coders learn C, Pascal, COBOL(one of the best IT jobs in economic crisis)<br />
80s coders learn C<br />
90s coders learn C++, Java, Delphi<br />
21-century (long time no see this <em>hot</em> word during 1999-2001)  coders learn C#?</p>
<p align="right">- A homemade rumor by anonymous craven</p>
<p>On PDC 2008, Anders, former architecture of Turbo Pascal, Delphi, Visual J++, currently the father of C#, gives us a presentation <a href="http://channel9.msdn.com/pdc2008/TL16/" target="_blank">“The Future of C#”</a> about what new features C# 4.0 will have. The demo “Compiler as a service” is really cool. Think about the prompt “C# &gt;”.</p>
<p>Mads Torgersen, C# Language PM gives a <a title="The Future of C#" href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=csharpfuture&amp;DownloadId=3550" target="_blank">public released document</a> on <a href="http://code.msdn.microsoft.com/csharpfuture" target="_blank">C# Future site</a>, describes four main new features:</p>
<blockquote>
<h5>Dynamic lookup</h5>
<p>Dynamic lookup allows you to write method, operator and indexer calls, property and field accesses, and even object invocations which bypass the C# static type checking and instead gets resolved at runtime.</p>
<h5>Named and optional parameters</h5>
<p>Parameters in C# can now be specified as optional by providing a default value for them in a member declaration. When the member is invoked, optional arguments can be omitted. Furthermore, any argument can be passed by parameter name instead of position.</p>
<h5>COM specific interop features</h5>
<p>Dynamic lookup as well as named and optional parameters both help making programming against COM less painful than today. On top of that, however, we are adding a number of other small features that further improve the interop experience.</p>
<h5>Variance</h5>
<p>It used to be that an IEnumerable&lt;string&gt; wasn’t an IEnumerable&lt;object&gt;. Now it is – C# embraces type safe “co-and contravariance” and common BCL types are updated to take advantage of that.</p></blockquote>
<p>My comments:</p>
<table border="1" cellspacing="1" cellpadding="2" width="700">
<thead>
<tr>
<th width="150">features</th>
<th>benefit</th>
<th>side effect</th>
</tr>
</thead>
<tbody>
<tr>
<td>Dynamic lookup</td>
<td><strong>dynamic </strong>(runtime type detection) versus <strong>var </strong>(compile time type inference) introduced in C#3.0.<br />
No handwritten reflection codes any more.</td>
<td>No IntelliSense when programming.<br />
Difficult to defend unknown runtime exceptions, errors.</td>
</tr>
<tr>
<td>Named and optional parameters</td>
<td>ease function call of COM interop like VSTO, etc.</td>
<td>Named parameters looks Pythonic. But maybe <a href="http://channel9.msdn.com/pdc2008/TL10/" target="_blank">Jim</a> like this?</td>
</tr>
<tr>
<td>COM specific interop features</td>
<td>based on previous two new features, it’s easier.<br />
The biggest benefit: no runtime PIA more!</td>
<td>N/A? Time to migrate old workaround code.</td>
</tr>
<tr>
<td>Variance</td>
<td>more friendly</td>
<td>as above.</td>
</tr>
</tbody>
</table>
<p>These new features certainly relies on new .NET framework. At least, <strong>dynamic</strong> is not a language sugar like <strong>var</strong>.</p>
<p>Overall, C# is becoming more and more free-style language, combined compile-time and run-time power. It’s worthy to take a look at what C# will be if you are a C# developer or even a Java, C++ lover. Write less, do more. That’s the best value of the C# evolution, IMO.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;headline=2009%3A+A+dynamic+future+of+C%23" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=2009%3A+A+dynamic+future+of+C%23&amp;u=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=2009%3A+A+dynamic+future+of+C%23&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html&amp;title=2009%3A+A+dynamic+future+of+C%23&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fblog.feuvan.net%2F2008%2F10%2F31%2F173-2009-a-dynamic-future-of-c.html" ><img class="lightsocial_img" src="http://blog.feuvan.net/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://blog.feuvan.net/2008/10/31/173-2009-a-dynamic-future-of-c.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
