<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx</link><description>The new installment of the “CLR Inside Out” column in MSDN magazine is now available on line. This month we have an article from Matt Ellis on Building Tuple . It provides one example of how a new type makes it into the base class libraries. You can find</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx#9812181</link><pubDate>Thu, 02 Jul 2009 02:00:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9812181</guid><dc:creator>energex</dc:creator><description>&lt;p&gt;I have a simple question.&lt;/p&gt;
&lt;p&gt;Everytime a program is fired up, I am aware that there is new application and domain object instanciated.&lt;/p&gt;
&lt;p&gt;Question is, is there &amp;nbsp;new CLR instance or is there one CLR hosting all application, can I force two CLR instances?&lt;/p&gt;
&lt;p&gt;What level of depth does the boundary and isolation stop at.&lt;/p&gt;
&lt;p&gt;Second question:&lt;/p&gt;
&lt;p&gt;In the MSIL there is only one constructor for multuiple string concationations - I dont understand why or how this behavior is different from the other base class objects&lt;/p&gt;
&lt;p&gt;For String A = S + G + C...&lt;/p&gt;
&lt;p&gt;where they are all strings&lt;/p&gt;
&lt;p&gt;Look at the above after fixing the syntax and you will only see on ctor() ????&lt;/p&gt;
&lt;p&gt;thanks&lt;/p&gt;
</description></item><item><title>re: CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx#9815256</link><pubDate>Fri, 03 Jul 2009 02:02:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9815256</guid><dc:creator>Melitta Andersen</dc:creator><description>&lt;p&gt;For your second question, you might want to check out the documentation for StringBuilder, specifically &amp;quot;Performance Considerations&amp;quot; section under the Remarks. &amp;nbsp;The documentation can be found here: &lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/library/system.text.stringbuilder.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.text.stringbuilder.aspx&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>re: CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx#9816585</link><pubDate>Fri, 03 Jul 2009 12:53:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9816585</guid><dc:creator>Daniel Earwicker</dc:creator><description>&lt;p&gt;Brilliant, would love to read more things like that about how things get into the BCL, CLR or languages (similar to Stroustrup's D&amp;amp;EC++).&lt;/p&gt;
&lt;p&gt;The standout message of that article has to be &amp;quot;we changed the design so that all tuples are reference types, although we asked the F# team to do some performance investigation to see if it experienced a speedup when using a value type for some sizes of tuples. It had a good way to test this, since its compiler, written in F#, was a good example of a large program that used tuples in a variety of scenarios. In the end, the F# team found that it did not get a performance improvement when some tuples were value types instead of reference types. This made us feel better about our decision to use reference types for tuple.&amp;quot;&lt;/p&gt;
&lt;p&gt;When I first started using C# I made the mistake of assuming that structs should be used wherever possible for lightweight objects to reduce the pressure on the GC. But it was pure guesswork (based on experience with the C++ heap) and not at all confirmed out by experiment. I've found the CLR GC seems to allocate/deallocate with performance close to the value-type stack, at least when objects are short-lived.&lt;/p&gt;
&lt;p&gt;It's good to know that even the F# team leapt to the same assumption. :)&lt;/p&gt;
</description></item><item><title>re: CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx#9816608</link><pubDate>Fri, 03 Jul 2009 13:12:10 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9816608</guid><dc:creator>Daniel Earwicker</dc:creator><description>&lt;p&gt;&amp;quot;The F# team was very concerned about tuple being a very lightweight type, because it uses so many different generic instantiations of the type across its product. If Tuple were to implement a large number of generic interfaces, they felt it would have an impact on their working set and NGen image size.&amp;quot;&lt;/p&gt;
&lt;p&gt;Did they test that too?&lt;/p&gt;
</description></item><item><title>re: CLR Inside Out - Building Tuple</title><link>http://blogs.msdn.com/clrteam/archive/2009/07/01/clr-inside-out-building-tuple.aspx#9820299</link><pubDate>Mon, 06 Jul 2009 21:08:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9820299</guid><dc:creator>Matt Ellis - MSFT</dc:creator><description>&lt;p&gt;@Daniel Earwicker&lt;/p&gt;
&lt;p&gt;I don't believe that F# did any tests around NGEN image size. &amp;nbsp;If they did, I didn't see the results.&lt;/p&gt;
&lt;p&gt;However, we did talk with some folks on the JIT/NGEN team and they agreed that this was an issue we'd need to be careful around (not that it's something we couldn't fix later by making improvements in NGEN). &amp;nbsp;&lt;/p&gt;
&lt;p&gt;Ultimately, we decided that there weren't any generic interfaces we really really wanted to add to the type right away which let us not worry about doing these sorts of investigations.&lt;/p&gt;
&lt;p&gt;Glad you liked the article, thanks for the great feedback!&lt;/p&gt;
</description></item></channel></rss>