<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="http://my.rsscache.com/rsc/rss2.xsl"?><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/" xmlns:rsscache="http://ns.rsscache.com/1.0"><channel><title>Sutter's (Online) Mill</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/default.aspx</link><description>Concurrency, C++, and .NET, oh my!</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>This blog has moved to Live Spaces --&amp;gt; herbsutter.spaces.live.com</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/12/29/45503.aspx</link><pubDate>Fri, 29 Dec 2006 22:55:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:45503</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=45503</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/12/29/45503.aspx#comments</comments><description>&lt;P&gt;It's time for me to take the plunge: Microsoft seems to have a reasonable blog hosting facility now at &lt;A href="http://spaces.live.com"&gt;Live Spaces&lt;/A&gt;, so I'm going to take the plunge and move over to &lt;A href="http://herbsutter.spaces.live.com"&gt;my new Live Spaces blog&lt;/A&gt;&amp;nbsp;(&lt;A href="http://herbsutter.spaces.live.com"&gt;http://herbsutter.spaces.live.com&lt;/A&gt;). You'll find two posts there already, one an Op/Ed piece about the &lt;A href="http://herbsutter.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dOpinion%2b%2526%2bEditorial"&gt;free laptop controversy&lt;/A&gt;, and another announcing &lt;A href="http://herbsutter.spaces.live.com/?_c11_blogpart_blogpart=blogview&amp;amp;_c=blogpart&amp;amp;partqs=cat%3dTalks%2b%2526%2bEvents"&gt;Stroustrup &amp;amp; Sutter #3 this March&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Moving is always a tough decision. I've really enjoyed being hosted here at Pluralsight, and I want to thank the Pluralsight folks very much for providing a space for my blog over the past few years. It's been a blast, and they're a great bunch!&lt;/P&gt;
&lt;P&gt;See you at Spaces, and best wishes to you and yours.&lt;/P&gt;
&lt;P&gt;Herb&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561229&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561229&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561229 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Updated (and new) September talks</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/08/30/36710.aspx</link><pubDate>Wed, 30 Aug 2006 19:32:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:36710</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=36710</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/08/30/36710.aspx#comments</comments><description>&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Two quick updates today: The talk I'm giving in the Seattle area has been moved by one week to September 13 (not 20 as previously posted).
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;The Concur Project: Some Experimental Concurrency Abstractions for Imperative Languages&lt;br&gt;&lt;/b&gt;September 13, 2006&lt;br&gt;&lt;a href="http://www.nwcpp.org/Meetings/2006/09.html"&gt;&lt;b&gt;Northwest C++ Users Group&lt;/b&gt;&lt;/a&gt;, Redmond, Washington, USA&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Intel has graciously invited me to speak on concurrency amid a&amp;nbsp;&lt;a href="http://irbseminars.intel-research.net/"&gt;gaggle of luminaries&lt;/a&gt;&amp;nbsp;in their fall seminar series.&amp;nbsp;The talk coordinates are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Software and the Concurrency Revolution&lt;br&gt;&lt;/b&gt;September 25, 2006&lt;br&gt;&lt;b&gt;&lt;a href="http://www.intel-research.net/berkeley/ViewSeminarAbstract.asp?index=601"&gt;Intel Research Programming Systems Seminar Series&lt;/a&gt;&lt;/b&gt;, Berkeley, California, USA&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;I look forward to seeing some of you at these events. If you're in town, feel free to drop by!&lt;/p&gt;
&lt;p&gt;Best wishes,&lt;/p&gt;
&lt;p&gt;Herb&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561228&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561228&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561228 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Guest ed online: It's (Not) All Been Done</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/08/07/32840.aspx</link><pubDate>Mon, 07 Aug 2006 19:18:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:32840</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=32840</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/08/07/32840.aspx#comments</comments><description>&lt;p&gt;I see DDJ has now posted my &lt;a href="http://ddj.com/dept/architect/191800187"&gt;guest editorial "It's (Not) All Been Done"&lt;/a&gt; that I blogged about last month.&lt;/p&gt;

&lt;p&gt;Because they have hard one-page limits on the length of the editorial in the print mag, about 25% got omitted to make it fit. So I've posted &lt;a href="http://www.gotw.ca/publications/guest-ed-200609.htm"&gt;the complete unabridged text&lt;/a&gt; on my site as well. Some of you might find it interesting to see how versions of a piece can get refitted in the production process.&lt;/p&gt;

&lt;p&gt;[humor]I suppose some people of (sniff) questionable taste and habits might even decide that the editors were right to remove the extra flab.[/humor] Seriously, it's possible I should have cut the extra anyway; authors tend to be lousy editors because we too easily fall in love with our own words. But I think it works, so I thought I'd make the slightly longer version available so you can judge for yourself.&lt;/p&gt;

&lt;p&gt;Enjoy,&lt;/p&gt;

&lt;p&gt;Herb&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561227&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561227&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561227 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>New article, upcoming talks</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/07/12/31776.aspx</link><pubDate>Wed, 12 Jul 2006 14:50:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:31776</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=31776</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/07/12/31776.aspx#comments</comments><description>A quick update: My &lt;a href="www.gotw.ca"&gt;home page&lt;/a&gt; is now updated with a list of upcoming articles and talks. In particular:

&lt;ul&gt;
&lt;li&gt;
    &lt;b&gt;Keynote: Software and the Concurrency Revolution&lt;br&gt;
      &lt;/b&gt;&lt;font color="#000099"&gt;August 14, 2006&lt;br&gt;
      &lt;/font&gt;&lt;font color="#0000FF"&gt;&lt;a href="http://tima.imag.fr/mpsoc/"&gt;&lt;b&gt;
	&lt;font color="#0000FF"&gt;MPSoC '06: 6th International Forum on 
	Application-Specific Multi-Processor SoC&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;&lt;/font&gt;&lt;a href="http://tima.imag.fr/mpsoc/"&gt;&lt;font color="#0000FF"&gt;&lt;b&gt; 
	[System on a Chip]&lt;/b&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000099"&gt;, 
	Estes Park, Colorado, USA&lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
    &lt;b&gt;The Concur Project: Some Experimental Concurrency Abstractions for Imperative 
	Languages&lt;br&gt;
      &lt;/b&gt;&lt;font color="#000099"&gt;September 20, 2006&lt;br&gt;
      &lt;/font&gt;&lt;a href="http://www.nwcpp.org/Meetings/2006/09.html"&gt;
	&lt;font color="#0000FF"&gt;&lt;b&gt;Northwest 
    C++ Users Group&lt;/b&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000099"&gt;, Bellevue, Washington, USA&lt;/font&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Guest Editorial: It's (Not) All Been Done&lt;/b&gt;,&lt;br&gt;
      &lt;font color="#000080"&gt;
      &lt;i&gt;Dr. Dobb's Journal&lt;/i&gt;, 31(9), September 2006.&lt;/font&gt;&lt;br&gt;
				This is a wonderful time to be a software 
				engineer because it's a new world again: For the first time in 
				the history of computing, mainstream computers are not von 
				Neumann machines and never will be again—they are parallel. We 
				have largely succeeded with the quest to put a computer in every 
				home and purse; now we're effectively going to put a Cray into 
				every den and pocket. That makes this is a time of enormous 
				opportunity, as usual along with a great deal of work, as our 
				industry now undertakes to do for parallel programming what we 
				have already done for generic types, objects, and garbage 
				collection.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561226&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561226&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561226 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Current and upcoming talks</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/06/26/29117.aspx</link><pubDate>Mon, 26 Jun 2006 13:36:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:29117</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=29117</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/06/26/29117.aspx#comments</comments><description>As I write this I'm sitting in Vail, Colorado, at the IEEE Computer Elements Workshop. It's a room full of top-notch processor designers -- if you've heard of a piece of hardware, from AS/400 to Xenon, likely one of its designers is here in the room.

Later today I'll give a talk on the effect on software of all this parallel hardware coming at us over the next few years, as one of the (or just "the"?) lone software person in the room. Like the talk I gave at InStat (another hardware/processor conference) last fall, it's nice to see the hardware conferences inviting people from software to talk about the effects these hardware trends are having on how we have to write our code. After all, these guys are making some way-cool new chips, all right, and those chips will be even cooler if they're actually programmable!

Later this summer (August), I'll also be giving a talk like this at another parallel hardware conference (also in Colorado, as it happens), this one dedicated to "Multiprocessor System-on-a-Chip," aka MPSoC '06. See http://www.gotw.ca/ for the links. Enjoy!

Herb

&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561225&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561225&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561225 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>[Ad] Your city: Mom Discovers $3 Whitening Trick</title><link>http://www.rsscache.com/Section/Advertise/click.aspx?a=821203</link><description>Dentists Do NOT Want You To Know About This Teeth Whitening Secret!</description></item><item><title>Highlights of the April 2006 ISO C++ meeting</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/05/03/22936.aspx</link><pubDate>Thu, 04 May 2006 01:19:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:22936</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=22936</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/05/03/22936.aspx#comments</comments><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;The ISO C++ committee met in Berlin from April 2-7, 2006. I thought I'd write a quick note about highlights of what was decided for C++0x:&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;How to get meeting minutes&lt;/strong&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;First, how to find out for yourself: The minutes of each meeting are usually available online about 2-3 weeks after the meeting. The easiest way to find WG21 minutes for a given meeting/year is to Google for "wg21 &amp;lt;year&amp;gt; minutes," in this case "wg21 2006 minutes." One of the first results is:&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;  Minutes of J16 Meeting No. 42/WG21 Meeting No. 37, April 3-7, 2006&lt;br/&gt;  &lt;a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1993.html"&gt;http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1993.html&lt;/a&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;BTW, in general, the easiest way to find any WG21 doc is to Google for "wg21 &amp;lt;doc number&amp;gt;". That's what I always do, because it's quicker than navigating my own hard drive even though I know where the doc is.&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;What got voted into the C++0x working draft&lt;/strong&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;At this meeting, five major pieces of work got approved into the draft. That means these features can (and likely will) still get tweaked and changed until the standard is actually finalized and published, but the upshot of being voted into the working paper is that these features are "for real" -- they've been discussed and debated, consensus has been achieved on their specification, actual wording written up in standardese, and a full committee vote passed to stick the standardese into the working paper.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;u&gt;Nearly all of the Library Technical Report (aka TR1)&lt;/u&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;The only part that wasn't voted in was the special mathematical functions, which are of interest principally only to heavy-duty scientists and mathematicians. The actual TR is in the process of publication, but you can find a nearly-final version on the ISO C++ committee website here: &lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf"&gt;N1836, Draft Technical Report on C++ Library Extensions&lt;/a&gt;.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;u&gt;Auto type deduction&lt;/u&gt;&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;This permits you to write declarations like&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;  auto x = 3.1415926535;&lt;br/&gt;  auto i = container.begin();&lt;/strong&gt;&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;where the type is deduced from the initializer. So in this case, &lt;strong&gt;x&lt;/strong&gt; has type &lt;strong&gt;double&lt;/strong&gt;, and &lt;strong&gt;i&lt;/strong&gt; has type &lt;strong&gt;map&amp;lt;string,unordered_map&amp;lt;int,tupe&amp;lt;float,string,const int&amp;gt; &amp;gt; &amp;gt;::const_iterator&lt;/strong&gt; or whatever the right type happens to be, without having to spell it out. The paper is: &lt;a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1984.pdf"&gt;N1984, Deducing the type of variable from its initializer expression (revision 4)&lt;/a&gt;.&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;u&gt;Delegating constructors&lt;/u&gt;&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt;This proposal was written by me and Francis Glassborow. It's a combined WG21 / C++/CLI proposal, though it was cut from the first edition of C++/CLI; if C++/CLI does add this it will follow this that WG21 has adopted (plus any future tweaks). The paper is: &lt;a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1986.pdf"&gt;N1986, Delegating Constructors (revision 3)&lt;/a&gt;.&lt;/div&gt;
&lt;div align="left" xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;u&gt;Right angle brackets&lt;/u&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;This fixes a tiny but perniciously annoying and embarrassing quirk of C++, and the fix adopted by C++ is the same that C++/CLI specified. Right angle brackets have been fixed so that constructions Like&amp;lt;This&amp;lt;Nested&amp;lt;Template&lt;font color="#339966"&gt;&lt;strong&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;/strong&gt;&lt;/font&gt; will work sensibly, without having to write the closing right angle brackets with extra whitespace Like&amp;lt;You&amp;lt;Must&amp;lt;Today&lt;strong&gt;&lt;font color="#ff0000"&gt;&amp;gt;  &amp;gt;  &amp;gt;  &amp;gt; &lt;/font&gt;&lt;/strong&gt;which is annoying, embarrassing, and suspected of contributing to dental decay among 18- to 24-year-olds in northeastern Mississippi. To find out more, see the paper: &lt;a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2005/n1757.html"&gt;N1757, Right Angle Brackets (Revision 2)&lt;/a&gt;.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;u&gt;Extern template&lt;/u&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;The terse paper is: &lt;a href="http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2006/n1987.htm"&gt;N1987, Adding 'extern template' (version 2)&lt;/a&gt;.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;br/&gt;Enjoy! And there's more to come when we meet next, in October 2006 (Portland, OR, USA).&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Herb&lt;br/&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561224&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561224&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561224 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Slides for PARC talk on concurrency</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/03/19/20259.aspx</link><pubDate>Sun, 19 Mar 2006 22:56:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:20259</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=20259</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/03/19/20259.aspx#comments</comments><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;As &lt;a href="http://pluralsight.com/blogs/hsutter/archive/2006/03/16/20167.aspx"&gt;previously blogged&lt;/a&gt;, this week I gave a &lt;a href="http://www.parc.com/cms/get_article.php?id=533"&gt;PARC Form talk&lt;/a&gt; on concurrency (&lt;a href="mms://216.93.180.194/parc_forum/v1130.wmv"&gt;wmv video&lt;/a&gt;) (&lt;a href="http://www.parc.com/events/forum/media/v1130.mp3"&gt;mp3 audio&lt;/a&gt;).&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;A number of people have asked that I post the slides, so I've put them online too (&lt;a href="http://gotw.ca/publications/SoftwareAndConcurrencyPARC.pdf"&gt;pdf slides&lt;/a&gt;).&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;I've also updated my &lt;a href="http://www.gotw.ca"&gt;home page&lt;/a&gt; and &lt;a href="http://www.gotw.ca/presentations.htm"&gt;talks page&lt;/a&gt; with these links.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Enjoy!&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Herb&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561223&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561223&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561223 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Yesterday's PARC talk now online: Software and the Concurrency Revolution</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/03/16/20167.aspx</link><pubDate>Fri, 17 Mar 2006 05:49:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:20167</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=20167</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/03/16/20167.aspx#comments</comments><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Yesterday I gave a talk at the Xerox PARC Forum about "Software and the Concurrency Revolution." Just 24 hours later, the &lt;a href="http://www.parc.com/cms/get_article.php?id=533"&gt;video and audio streams are online here&lt;/a&gt;. Now that's service!&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;If you weren't in the area or able to drop by, you can take it in online. I hope you enjoy the talk.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Note to those who've seen concurrency talks from me before: There is interesting and useful new stuff here. In particular, check out the midway point of the talk, which contains material I've never given publicly before about how to categorize and think about forms of concurrency (thanks to David Callahan for lending me these three slides). For those who haven't seen a Concur talk from me yet in 2006, the part about parallel STL algorithms near the end will also be new since it reflects thinking I did over the winter.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Enjoy,&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Herb&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561222&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561222&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561222 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>A Design Rationale for C++/CLI, v 1.1</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/02/27/19271.aspx</link><pubDate>Tue, 28 Feb 2006 04:02:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:19271</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=19271</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/02/27/19271.aspx#comments</comments><description>&lt;font size="2" xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;div&gt;FYI, I've posted a "1.1" minor update of my C++/CLI design rationale paper. It's at the &lt;a href="http://www.gotw.ca/publications/C++CLIRationale.pdf"&gt;same location&lt;/a&gt;. The main change from the "1.0" version I posted two weeks ago is that the preface and section 1 have been merged and made clearer (realizing that some people won't read past that part). The rest includes minor enhancements such as filling in a few missing details for some of the points discussed. Enjoy,&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;Herb&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;/font&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561221&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561221&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561221 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>A Design Rationale for C++/CLI</title><link>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/02/18/18911.aspx</link><pubDate>Sun, 19 Feb 2006 05:56:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:18911</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight-training.net/community/blogs/hsutter/rsscomments.aspx?PostID=18911</wfw:commentRss><comments>http://www.pluralsight-training.net/community/blogs/hsutter/archive/2006/02/18/18911.aspx#comments</comments><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;I thought I should finally get around to writing a design rationale for C++/CLI, to pull together in one place some accurate information about the whats, whys, and hows of these extensions. You can find it at:&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;  A Design Rationale for C++/CLI&lt;br/&gt;  &lt;a href="http://www.gotw.ca/publications/C++CLIRationale.pdf"&gt;http://www.gotw.ca/publications/C++CLIRationale.pdf&lt;/a&gt;&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;I've pasted the Preface below. The paper also includes a FAQ covering some common points of interest about C++/CLI. I expect it to be a living document; this is version 1.0.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Enjoy,&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Herb&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;/div&gt;
&lt;h1 style="PADDING-RIGHT: 0in; MARGIN-TOP: 24pt; PADDING-LEFT: 0in; FONT-WEIGHT: normal; FONT-SIZE: 16pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: 0in" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;Preface&lt;/strong&gt;&lt;/h1&gt;
&lt;div style="PADDING-RIGHT: 0.5in; MARGIN-TOP: 0in; PADDING-LEFT: 0.5in; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;font color="#000080"&gt;&lt;em&gt;A multiplicity of libraries, run-time environments, and development environments are essential to support the range of C++ applications. This view guided the design of C++ as early as 1987; in fact, it is older yet. Its roots are in the view of C++ as a general-purpose language&lt;/em&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0.5in; MARGIN-TOP: 0in; PADDING-LEFT: 0.5in; FONT-SIZE: 10pt; MARGIN-BOTTOM: 9pt; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;font color="#000080"&gt;&lt;em&gt;                                                                 — B. Stroustrup (D&amp;amp;E, p. 168)&lt;/em&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 0in; FONT-SIZE: 10pt; MARGIN-BOTTOM: 6pt; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;C++/CLI was created to promote C++ use on a major platform, ISO CLI (the standardized subset of .NET). This paper attempts to capture a small but representative sample of the experience gained by a succession of C++ experts who have tried to define a binding between C++ and CLI. A central goal is to explain why pure library extensions are technically insufficient in the cases where they were not used, by considering design alternatives for representative examples that cover most CLI feature areas:&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;CLI types (e.g., ref class, value class):&lt;/strong&gt; Why new type categories are needed, and considerations for choosing the right defaults for CLI types.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;CLI type features (e.g., property):&lt;/strong&gt; Why new abstractions are needed for some CLI features.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;CLI heap (e.g., ^, gcnew):&lt;/strong&gt; Why not to reuse the existing * pointer declarator and new.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;CLI generics (generic):&lt;/strong&gt; Why the new genericity feature is distinct from templates, but compatible and highly integrated with templates.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 6pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;strong&gt;CLI non-features (e.g., template, const):&lt;/strong&gt; Why and how these are made to work on CLI types.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 0in; FONT-SIZE: 10pt; MARGIN-BOTTOM: 6pt; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;For each case, the paper describes:&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;The CLI feature and basic requirements, including representative metadata that must be generated.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;The lower-impact Managed Extensions design, and where it was insufficient.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;The C++/CLI design and rationale.&lt;/div&gt;
&lt;div style="PADDING-RIGHT: 0in; MARGIN-TOP: 0in; PADDING-LEFT: 27.35pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 6pt; TEXT-INDENT: -0.2in; LINE-HEIGHT: 13pt" align="justify" xmlns="http://www.w3.org/1999/xhtml"&gt;Other major design choices that were considered, both in earlier iterations of C++/CLI and in other separate design efforts that didn’t work out and were never publicly available.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;span style="FONT-SIZE: 10pt"&gt;Finally, note that most of the C++/CLI extensions are needed only when using C++/CLI to &lt;em&gt;author&lt;/em&gt; new CLI types and libraries. In practice, many programmers using a C++/CLI-enabled compiler (currently Visual C++ 2005) are simply taking advantage of the ability to seamlessly &lt;em&gt;use&lt;/em&gt; existing CLI types with their C++ code, which typically requires no extended syntax at all beyond a sprinkling of &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt;gcnew&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt; and &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt;^&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt;.&lt;/span&gt;&lt;br/&gt; &lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=73561220&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=73561220&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=73561220 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>This blog has moved to Live Spaces --&amp;gt; herbsutter.spaces.live.com</title><link>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/12/29/45503.aspx</link><pubDate>Fri, 29 Dec 2006 22:55:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:45503</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/hsutter/rsscomments.aspx?PostID=45503</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/12/29/45503.aspx#comments</comments><description>&lt;P&gt;It's time for me to take the plunge: Microsoft seems to have a reasonable blog hosting facility now at &lt;A href="http://spaces.live.com"&gt;Live Spaces&lt;/A&gt;, so I'm going to take the plunge and move over to &lt;A href="http://herbsutter.spaces.live.com"&gt;my new Live Spaces blog&lt;/A&gt;&amp;nbsp;(&lt;A href="http://herbsutter.spaces.live.com"&gt;http://herbsutter.spaces.live.com&lt;/A&gt;). You'll find two posts there already, one an Op/Ed piece about the &lt;A href="http://herbsutter.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;amp;_c=BlogPart&amp;amp;partqs=cat%3dOpinion%2b%2526%2bEditorial"&gt;free laptop controversy&lt;/A&gt;, and another announcing &lt;A href="http://herbsutter.spaces.live.com/?_c11_blogpart_blogpart=blogview&amp;amp;_c=blogpart&amp;amp;partqs=cat%3dTalks%2b%2526%2bEvents"&gt;Stroustrup &amp;amp; Sutter #3 this March&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Moving is always a tough decision. I've really enjoyed being hosted here at Pluralsight, and I want to thank the Pluralsight folks very much for providing a space for my blog over the past few years. It's been a blast, and they're a great bunch!&lt;/P&gt;
&lt;P&gt;See you at Spaces, and best wishes to you and yours.&lt;/P&gt;
&lt;P&gt;Herb&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=47906162&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=47906162&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=47906162 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Updated (and new) September talks</title><link>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/08/30/36710.aspx</link><pubDate>Wed, 30 Aug 2006 19:32:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:36710</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/hsutter/rsscomments.aspx?PostID=36710</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/08/30/36710.aspx#comments</comments><description>&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Two quick updates today: The talk I'm giving in the Seattle area has been moved by one week to September 13 (not 20 as previously posted).
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;The Concur Project: Some Experimental Concurrency Abstractions for Imperative Languages&lt;br&gt;&lt;/b&gt;September 13, 2006&lt;br&gt;&lt;a href="http://www.nwcpp.org/Meetings/2006/09.html"&gt;&lt;b&gt;Northwest C++ Users Group&lt;/b&gt;&lt;/a&gt;, Redmond, Washington, USA&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Intel has graciously invited me to speak on concurrency amid a&amp;nbsp;&lt;a href="http://irbseminars.intel-research.net/"&gt;gaggle of luminaries&lt;/a&gt;&amp;nbsp;in their fall seminar series.&amp;nbsp;The talk coordinates are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Software and the Concurrency Revolution&lt;br&gt;&lt;/b&gt;September 25, 2006&lt;br&gt;&lt;b&gt;&lt;a href="http://www.intel-research.net/berkeley/ViewSeminarAbstract.asp?index=601"&gt;Intel Research Programming Systems Seminar Series&lt;/a&gt;&lt;/b&gt;, Berkeley, California, USA&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;I look forward to seeing some of you at these events. If you're in town, feel free to drop by!&lt;/p&gt;
&lt;p&gt;Best wishes,&lt;/p&gt;
&lt;p&gt;Herb&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=47906161&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=47906161&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=47906161 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Guest ed online: It's (Not) All Been Done</title><link>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/08/07/32840.aspx</link><pubDate>Mon, 07 Aug 2006 19:18:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:32840</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/hsutter/rsscomments.aspx?PostID=32840</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/08/07/32840.aspx#comments</comments><description>&lt;p&gt;I see DDJ has now posted my &lt;a href="http://ddj.com/dept/architect/191800187"&gt;guest editorial "It's (Not) All Been Done"&lt;/a&gt; that I blogged about last month.&lt;/p&gt;

&lt;p&gt;Because they have hard one-page limits on the length of the editorial in the print mag, about 25% got omitted to make it fit. So I've posted &lt;a href="http://www.gotw.ca/publications/guest-ed-200609.htm"&gt;the complete unabridged text&lt;/a&gt; on my site as well. Some of you might find it interesting to see how versions of a piece can get refitted in the production process.&lt;/p&gt;

&lt;p&gt;[humor]I suppose some people of (sniff) questionable taste and habits might even decide that the editors were right to remove the extra flab.[/humor] Seriously, it's possible I should have cut the extra anyway; authors tend to be lousy editors because we too easily fall in love with our own words. But I think it works, so I thought I'd make the slightly longer version available so you can judge for yourself.&lt;/p&gt;

&lt;p&gt;Enjoy,&lt;/p&gt;

&lt;p&gt;Herb&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=47906160&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=47906160&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=47906160 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>New article, upcoming talks</title><link>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/07/12/31776.aspx</link><pubDate>Wed, 12 Jul 2006 14:50:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:31776</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/hsutter/rsscomments.aspx?PostID=31776</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/07/12/31776.aspx#comments</comments><description>A quick update: My &lt;a href="www.gotw.ca"&gt;home page&lt;/a&gt; is now updated with a list of upcoming articles and talks. In particular:

&lt;ul&gt;
&lt;li&gt;
    &lt;b&gt;Keynote: Software and the Concurrency Revolution&lt;br&gt;
      &lt;/b&gt;&lt;font color="#000099"&gt;August 14, 2006&lt;br&gt;
      &lt;/font&gt;&lt;font color="#0000FF"&gt;&lt;a href="http://tima.imag.fr/mpsoc/"&gt;&lt;b&gt;
	&lt;font color="#0000FF"&gt;MPSoC '06: 6th International Forum on 
	Application-Specific Multi-Processor SoC&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;&lt;/font&gt;&lt;a href="http://tima.imag.fr/mpsoc/"&gt;&lt;font color="#0000FF"&gt;&lt;b&gt; 
	[System on a Chip]&lt;/b&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000099"&gt;, 
	Estes Park, Colorado, USA&lt;/font&gt;
&lt;/li&gt;
&lt;li&gt;
    &lt;b&gt;The Concur Project: Some Experimental Concurrency Abstractions for Imperative 
	Languages&lt;br&gt;
      &lt;/b&gt;&lt;font color="#000099"&gt;September 20, 2006&lt;br&gt;
      &lt;/font&gt;&lt;a href="http://www.nwcpp.org/Meetings/2006/09.html"&gt;
	&lt;font color="#0000FF"&gt;&lt;b&gt;Northwest 
    C++ Users Group&lt;/b&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000099"&gt;, Bellevue, Washington, USA&lt;/font&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Guest Editorial: It's (Not) All Been Done&lt;/b&gt;,&lt;br&gt;
      &lt;font color="#000080"&gt;
      &lt;i&gt;Dr. Dobb's Journal&lt;/i&gt;, 31(9), September 2006.&lt;/font&gt;&lt;br&gt;
				This is a wonderful time to be a software 
				engineer because it's a new world again: For the first time in 
				the history of computing, mainstream computers are not von 
				Neumann machines and never will be again—they are parallel. We 
				have largely succeeded with the quest to put a computer in every 
				home and purse; now we're effectively going to put a Cray into 
				every den and pocket. That makes this is a time of enormous 
				opportunity, as usual along with a great deal of work, as our 
				industry now undertakes to do for parallel programming what we 
				have already done for generic types, objects, and garbage 
				collection.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=47906159&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=47906159&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=47906159 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Current and upcoming talks</title><link>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/06/26/29117.aspx</link><pubDate>Mon, 26 Jun 2006 13:36:00 GMT</pubDate><guid isPermaLink="false">d057c89c-07b5-4bfb-b52f-d79d1e3ece89:29117</guid><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">herb-sutter</dc:creator><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.pluralsight.com/community/blogs/hsutter/rsscomments.aspx?PostID=29117</wfw:commentRss><comments>http://www.pluralsight.com/community/blogs/hsutter/archive/2006/06/26/29117.aspx#comments</comments><description>As I write this I'm sitting in Vail, Colorado, at the IEEE Computer Elements Workshop. It's a room full of top-notch processor designers -- if you've heard of a piece of hardware, from AS/400 to Xenon, likely one of its designers is here in the room.

Later today I'll give a talk on the effect on software of all this parallel hardware coming at us over the next few years, as one of the (or just "the"?) lone software person in the room. Like the talk I gave at InStat (another hardware/processor conference) last fall, it's nice to see the hardware conferences inviting people from software to talk about the effects these hardware trends are having on how we have to write our code. After all, these guys are making some way-cool new chips, all right, and those chips will be even cooler if they're actually programmable!

Later this summer (August), I'll also be giving a talk like this at another parallel hardware conference (also in Colorado, as it happens), this one dedicated to "Multiprocessor System-on-a-Chip," aka MPSoC '06. See http://www.gotw.ca/ for the links. Enjoy!

Herb

&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=http://nimbb.com&gt;&lt;span style=&amp;quote;text-decoration:none; font-family: Verdana, Arial;&amp;quote;&gt;&lt;img src="http://service.nimbb.com/Images/logo.png" border=0&gt; Webcam video recording in your browser!&lt;/span&gt;&lt;/a&gt; &lt;p&gt;&lt;a href=http://www.rsscache.com/Section/Advertise/click.aspx?n=47906158&gt;&lt;img src="http://www.rsscache.com/Section/Advertise/ads.aspx?n=47906158&amp;f=2158" border=0&gt;&lt;/a&gt;&lt;p&gt;&lt;div style="font-size: 8pt;"&gt;&lt;img align=left src=http://www.rsscache.com/Section/Stats/logo.aspx?n=47906158 border=0&gt; Bandwidth saved by &lt;a href=http://www.rsscache.com&gt;RSScache.com&lt;/a&gt;&lt;/div&gt;</description></item><rsscache:id>2158</rsscache:id></channel></rss>