<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Comment Feed for joedu</title>
	<atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Niners/joedu/Comments/RSS"></atom:link>
	<image>
		<url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url>
		<title>joedu</title>
		<link></link>
	</image>
	<description></description>
	<link></link>
	<language>en</language>
	<pubDate>Tue, 21 May 2013 03:13:29 GMT</pubDate>
	<lastBuildDate>Tue, 21 May 2013 03:13:29 GMT</lastBuildDate>
	<generator>Rev9</generator>
	<item>
		<title>Re: Expert to Expert - Joe Duffy: Perspectives on Concurrent Programming and Parallelism</title>
		<description>
			<![CDATA[I agree that there are many useful extensions to Haskell that solve particualr problems.&nbsp; (This is why I was careful to say &quot;vanilla Haskell (98)&quot;.)&nbsp; Concurrent Haskell, Data&nbsp;Parallel Haskell, and STM TVars are all great examples.&nbsp; It is still unclear
 to me whether a new langauge ought to dictate a more constrained model for constructing programs, or whether providing a great collection of independent (but composable) packages is better.&nbsp; The former is typically needed to reach a broad developer audience,
 but is at odds with some of the most fundamental language design principles that I strongly believe in (e.g., the C&#43;&#43; model of helping developers to do the &quot;right&quot; thing but not preventing them from doing the &quot;wrong&quot; thing).<br /><br />In any case, we probably agree on one thing: in the long-term, a new language is needed.&nbsp; We're just debating execution strategies to get there.&nbsp; I firmly believe we need a stepping stone from here to there, but that &quot;there&quot; is still a very&nbsp;important place
 to end up.<br /><br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Perspectives-on-Concurrent-Programming-and-Parallelism#c633705828700000000</link>
		<pubDate>Wed, 18 Feb 2009 19:41:10 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Perspectives-on-Concurrent-Programming-and-Parallelism#c633705828700000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Expert to Expert - Joe Duffy: Perspectives on Concurrent Programming and Parallelism</title>
		<description>
			<![CDATA[
<p>I'm glad you enjoyed the discussion.</p>
<p>I'm reading over all of your comments, and I see many great points being made.</p>
<p>One that I'd like to deposit for your consideration.&nbsp; Haskell is an ideal language _in certain contexts_.&nbsp; For some people, those contexts are important enough to learn an entirely new language.&nbsp; Highly parallel programs may be one such context, where the
 safety moving wholesale to Haskell brings is worth the cost of switching.&nbsp; Even if that were true, _most_ .NET developers are not currently salivating for parallelism.&nbsp; In 5 years?&nbsp; Maybe.&nbsp; But not today.&nbsp; So as a broad blanket statement, it is safe to say
 that the perceived cost of switching to Haskell is far higher than the perceived benefit for the bulk of the development community.&nbsp; This is why an incemental, move-select-parts-of-your-program-over-to-the-safe-world-piecemeal, strategy is so attractive.</p>
<p>In addition to that, I mentioned in the video that Haskell is not a panacea.&nbsp; It has many interesting ideas, but some that I consider to be debatable for the .NET community at large.&nbsp; Algebraic data types mixed with structural pattern matching -- with type
 classes for polymorphism --&nbsp;are useful for a certain class of programming, but telling a whole community of object-oriented developers to switch overnight will not only result in religious clashes, but is probably just plain wrong anyway.&nbsp; There&nbsp;is a plethora
 of shared knowledge (e.g., in patterns -- see GoF), collateral (books, articles, training), and frameworks&nbsp;that Windows developers rely on each day, which are strongly tied to the C&#43;&#43;-family of languages.&nbsp; Moreover, I don't believe vanilla Haskell (98) has
 solved _all_ of the problems associated with composition of separate agents that are performing I/O.&nbsp; The &quot;one top-level I/O loop&quot; style of programming doesn't scale beyond one coarse-grained agent.&nbsp; For that, something more like Occam or Erlang is neeeded,
 and&nbsp;this is crucial to address in order to enable composition of fine-grain with coarse-grain concurrency.</p>
<p>Food for thought, I hope.</p>
<p>Best Regards,<br />---joe</p>
<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Perspectives-on-Concurrent-Programming-and-Parallelism#c633705807310000000</link>
		<pubDate>Wed, 18 Feb 2009 19:05:31 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Perspectives-on-Concurrent-Programming-and-Parallelism#c633705807310000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Using the Parallel Extensions to the .NET Framework</title>
		<description>
			<![CDATA[Type systems, isolation, immutability, ... ?&nbsp; I know not of what you speak.&nbsp; <img src='http://ecn.channel9.msdn.com/o9/content/images/emoticons/emotion-5.gif' alt='Wink' /><br /><br />---joe<br /><a href="http://www.bluebytesoftware.com/blog/">http://www.bluebytesoftware.com/blog/</a><p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/VisualStudio/Using-the-Parallel-Extensions-to-the-NET-Framework#c633627515480000000</link>
		<pubDate>Thu, 20 Nov 2008 04:19:08 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/VisualStudio/Using-the-Parallel-Extensions-to-the-NET-Framework#c633627515480000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Inside Parallel Extensions for .NET 2008 CTP Part 1</title>
		<description>
			<![CDATA[Anders was very instrumental in getting Parallel Extensions off the ground and designed right.&nbsp; He's still involved regularly on hard design problems, but is a busy guy and works on a lot of things across the company.<br /><br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Inside-Parallel-Extensions-for-NET-2008-CTP-Part-1#c633483128600000000</link>
		<pubDate>Fri, 06 Jun 2008 01:34:20 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Inside-Parallel-Extensions-for-NET-2008-CTP-Part-1#c633483128600000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Joe Duffy, Huseyin Yildiz, Daan Leijen, Stephen Toub - Parallel Extensions: Inside the Task Parallel</title>
		<description>
			<![CDATA[littleguru,<br /><br />Your proposed syntax relies on the 1st pass of SEH, but can be written directly in IL or VB (since they support filters).&nbsp; C# doesn't support them and, to be honest, I'm glad they don't.&nbsp; We did consider this model to make AggregateExceptions more palatable,
 but for various reasons we don't think it would make a huge difference.&nbsp; Moreover, the 2-pass model of SEH is problematic and so we would prefer not to embellish it.<br /><br />I should restate a point from the video: we encourage that developers <em>to the best of their ability
</em>prevent exceptions from leaking across parallel boundaries.&nbsp; Life simply remains a lot easier.&nbsp; Once the crossing is possible, you need to deal with AggregateExceptions which is a bit like stepping through a wormhole:&nbsp; you end up in a completely different
 part of the universe with little chance of getting back to your origin.<br /><br />The real issue is that with one-level deep examples like the one you show, you can certainly figure out how to pick out the exceptions you care about, handle them, etc.&nbsp; We even offer the Handle API for this:<br /><br />try {<br />&nbsp;&nbsp;&nbsp; ... parallel code ...<br />} catch (AggregateException ae) {<br />&nbsp;&nbsp;&nbsp; ae.Handle(delegate(Exception e) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (e is FooException) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ... handle it&nbsp;...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return true;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br />&nbsp;&nbsp;&nbsp; });<br />}<br /><br />If, after running the delegate on all exceptions, there are any for which the delegate returned 'false' (i.e. unhandled), Handle rethrows a new AggregateException.&nbsp; I admit,&nbsp;this code is a tad ugly, but even with 1st pass support you'd have to do something
 like this.&nbsp; (Unless SEH knew to deliver <em>only </em>the exceptions that were chosen in the 1st pass selection criteria, which would require yet more machinery.)&nbsp; But the issue is, what if you handle some FooExceptions, but leave some BarExceptions in there?&nbsp;
 Again, those up the callstack will see AggregateExceptions and will need to have known to write the whacky code I show above.<br /><br />All of this is really to say that AggregateExceptions are fundamentally very different.&nbsp; Exceptions in current programming languages are, for better or for worse, very single-threaded in nature.&nbsp; They assume a linear, crawlable callstack, with try/catch blocks
 that are equipped to handle a single exception at a time.&nbsp; I can't say I'm terribly happy with where we are, but I can say I think it's the best we can do right now&nbsp;given the current world of SEH.<br /><br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Huseyin-Yildiz-Daan-Leijen-Stephen-Toub-Parallel-Extensions-Inside-the-Task-Parallel#c633391277060000000</link>
		<pubDate>Wed, 20 Feb 2008 18:08:26 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Huseyin-Yildiz-Daan-Leijen-Stephen-Toub-Parallel-Extensions-Inside-the-Task-Parallel#c633391277060000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Joe Duffy, Huseyin Yildiz, Daan Leijen, Stephen Toub - Parallel Extensions: Inside the Task Parallel</title>
		<description>
			<![CDATA[evildictaitor,<br /><br />I do think Daan overstated the point (perhaps intentionally) about automatic/implicit parallelism.&nbsp; It is true that many kinds of computations can be automatically run in parallel with little-to-no input from the developer.&nbsp; When might this be possible?&nbsp; When
 a computation is guaranteed not to have side-effects and thread-affinity.<br /><br />This&nbsp;already commonly&nbsp;applies&nbsp;to specialized&nbsp;frameworks and domain-specific languages.&nbsp; Big hammer APIs like parsing an XML document or compressing a large stream of data&nbsp;also immediately come to mind.&nbsp; Functional programming as a broader class of automatically
 parallelizable computations is an interesting one, but is not a silver bullet.&nbsp; Mostly-functional languages are more popular than purely-functional ones; F# and LISP,&nbsp;for example, permit&nbsp;&quot;silent&quot;&nbsp;side-effects buried within otherwise pure computations, which
 means you can't really rely on their absence anywhere.<br /><br />Haskell and Miranda are two examples from a very small set of purely functional languages, where all &quot;silent&quot;&nbsp;imperative effects are disallowed, but for certain type system accomodations (monads), in which implicit parallelism is possible.&nbsp; This allows you
 to at least know when parallelism might be dangerous, and it's the exception rather than the rule.&nbsp; But even here, many real-world programs are constrained by data and control dependence.&nbsp; You might be interested in John DeTreville's brief case study on this
 fact: <a href="http://lambda-the-ultimate.org/node/1948">http://lambda-the-ultimate.org/node/1948</a>.<br /><br />Nevertheless, implicit and automatic parallelism are clearly of interest to researchers in the field.&nbsp; I think what Daan was trying to say is that we're still a few years away from having a more general solution.&nbsp; Between now and then, however, I would expect
 to see some specialized frameworks providing this; heck, just look at MATLAB and SQL for examples where this has already succeeded.<br /><br />Regards,<br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Huseyin-Yildiz-Daan-Leijen-Stephen-Toub-Parallel-Extensions-Inside-the-Task-Parallel#c633391270830000000</link>
		<pubDate>Wed, 20 Feb 2008 17:58:03 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Joe-Duffy-Huseyin-Yildiz-Daan-Leijen-Stephen-Toub-Parallel-Extensions-Inside-the-Task-Parallel#c633391270830000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Programming in the Age of Concurrency - Anders Hejlsberg and Joe Duffy: Concurrent Programming with </title>
		<description>
			<![CDATA[
<p>Hi Jaime,<br />There is an overload of Parallel.For whose 'body' lambda is passed a ParallelState object.&nbsp; This object offers a 'Stop' method which is effectively the same as 'break' in a sequential loop.&nbsp; So for example, your code would look something like (changes highlighted):<br /><br />System.Threading.<font color="#2b91af" size="2">Parallel</font><font size="2">.For(1, maximumIterations_, 1,<font> (dd, state)</font>&nbsp;=&gt;<br />{<br />&nbsp;&nbsp; s = trapzd(function, lower, upper, dd);</p>
<p></font><font color="#0000ff" size="2">&nbsp;&nbsp;&nbsp;if</font><font size="2"> (</font><font color="#2b91af" size="2">Math</font><font size="2">.Abs(s - olds) &lt; tolerance_ *
</font><font color="#2b91af" size="2">Math</font><font size="2">.Abs(olds))<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exeeded = </font><font color="#0000ff" size="2">true</font><font size="2">;<br /><font color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;state.Stop();</font><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff" size="2">return</font><font size="2">;<br />&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;olds = s;<br />});</font><br /><br />I didn't try to compile this, but it should work and do what you are looking for.&nbsp; Take care,<br />---joe</p>
<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633319786170000000</link>
		<pubDate>Fri, 30 Nov 2007 00:16:57 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633319786170000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Programming in the Age of Concurrency - Anders Hejlsberg and Joe Duffy: Concurrent Programming with </title>
		<description>
			<![CDATA[
<p>Now, about the more general issue of shared state.&nbsp; Judah hit the nail right on the head in his response.&nbsp; We do not (currently) reject programs due to reliance on shared state.&nbsp; LINQ tends to lead programmers down a more functional programming style so
 the problem is less pervasive (though still there) in PLINQ.<br /><br />Please take a look at <a href="http://www.bluebytesoftware.com/blog/2007/09/15/ParallelFXMSDNMagArticles.aspx">
http://www.bluebytesoftware.com/blog/2007/09/15/ParallelFXMSDNMagArticles.aspx</a>&nbsp;for some more details on what we call &quot;parallelism blockers.&quot;&nbsp;&nbsp;This includes shared state, thread affinity, and slight changes in exception behavior. &nbsp;Our story here is not completely
 ironed out, at least not ironed out enough to describe to everybody right now.&nbsp; When it is, you can be sure we'll be back here on Channel9 to discuss it.</p>
<p>Thanks for all of the great feedback.&nbsp; Keep it coming.</p>
<p>---joe</p>
<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280610100000000</link>
		<pubDate>Mon, 15 Oct 2007 16:03:30 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280610100000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Programming in the Age of Concurrency - Anders Hejlsberg and Joe Duffy: Concurrent Programming with </title>
		<description>
			<![CDATA[esoteric,<br /><br />I'm glad to hear you agree with our direction.&nbsp; As to whether TPL is built on top of the existing thread-pool, it is currently not.&nbsp; But we know that programs will be written that use both in the same process, both moving forward and when considering legacy
 apps,&nbsp;and thus there must be some resource management cooperation in the final solution.&nbsp; Nothing is baked enough to discuss, but once it is you can bet we'll be looking for feedback on the approach.<br /><br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280607120000000</link>
		<pubDate>Mon, 15 Oct 2007 15:58:32 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280607120000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Programming in the Age of Concurrency - Anders Hejlsberg and Joe Duffy: Concurrent Programming with </title>
		<description>
			<![CDATA[PerfectPhase,<br /><br />Yes, these technologies are written entirely in managed code, and run on top of the stock CLR.&nbsp; While this is true today, it's of course possible, like any .NET Framework class library, that we'll pursue opportunities for tighter integration with the runtime
 as the libraries are further developed.<br /><br />---joe<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280605930000000</link>
		<pubDate>Mon, 15 Oct 2007 15:56:33 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Shows/Going+Deep/Programming-in-the-Age-of-Concurrency-Anders-Hejlsberg-and-Joe-Duffy-Concurrent-Programming-with#c633280605930000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: CLR Team Tour, Part II - The Future of Languages (PDC panel preview)</title>
		<description>
			<![CDATA[
<blockquote>
<div>Charles wrote:</div>
<div><br /><br />Agreed. I thought these CLR team videos would have invoked more conversation. <br /><br />C</div>
</blockquote>
<br />It's&nbsp;the redesigned site, I tell ya! You have seemingly discombobulated everybody... <img src='http://ecn.channel9.msdn.com/o9/content/images/emoticons/emotion-7.gif' alt='Perplexed' /><p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/scobleizer/CLR-Team-Tour-Part-II-The-Future-of-Languages-PDC-panel-preview#c632613141360000000</link>
		<pubDate>Sat, 03 Sep 2005 03:15:36 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/scobleizer/CLR-Team-Tour-Part-II-The-Future-of-Languages-PDC-panel-preview#c632613141360000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Kit George - Tour of .NET CLR Base Class Library Team (Part II)</title>
		<description>
			<![CDATA[
<p dir="ltr">Littleguru: No, that's not what I was suggesting, although with the minimal amount of explanation I did in the video, I can see how one would get that impression. <img src='http://ecn.channel9.msdn.com/o9/content/images/emoticons/emotion-1.gif' alt='Smiley' /><br>
<br>
The primary problem is that there's no way to call this from a base class. If it weren't explicitly implemented, you could easily just do:<br>
<br>
base.Dispose();<br>
<br>
But because explicit implementations are emitted as private by the C# compiler (which the team firmly believes is the correct design), this isn't possible. You can't even do it in IL. One could imagine new C# syntax that made this possible:<br>
<br>
((IDisposable)base).Dispose();<br>
<br>
But this would only be possible with either<br>
a) Explicitly implemented methods being emitted as&nbsp;family; or,<br>
b) A &quot;basecall&quot; IL instruction.<br>
<br>
We're going to look at these in future releases, but we dropped the idea for Whidbey.</p>
<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team-Part-II#c632416802090000000</link>
		<pubDate>Tue, 18 Jan 2005 21:23:29 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team-Part-II#c632416802090000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Kit George - Tour of .NET CLR Base Class Library Team</title>
		<description>
			<![CDATA[Man, I didn't think I was a geek... But I even <em>sound</em> like one. Guess I should just go with the flow. <img src='http://ecn.channel9.msdn.com/o9/content/images/emoticons/emotion-1.gif' alt='Smiley' /><p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team#c632416212960000000</link>
		<pubDate>Tue, 18 Jan 2005 05:01:36 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team#c632416212960000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
	<item>
		<title>Re: Kit George - Tour of .NET CLR Base Class Library Team (Part II)</title>
		<description>
			<![CDATA[Fyi, a bit more reading on the whole disposable topic is available on my blog:<br>
<a href="http://www.bluebytesoftware.com/blog/PermaLink.aspx?guid=1fe0f820-5b2b-4b17-82af-08142e7f308a">http://www.bluebytesoftware.com/blog/PermaLink.aspx?guid=1fe0f820-5b2b-4b17-82af-08142e7f308a</a><br>
<br>
Feedback, questions, comments,&nbsp;etc. are welcome.<p>posted by joedu</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team-Part-II#c632416187510000000</link>
		<pubDate>Tue, 18 Jan 2005 04:19:11 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/TheChannel9Team/Kit-George-Tour-of-NET-CLR-Base-Class-Library-Team-Part-II#c632416187510000000</guid>
		<dc:creator>joedu</dc:creator>
	</item>
</channel>
</rss>