<?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>Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx</link><description>[ Note: this post is now out-of-date: drafts of Chapters 2-7 are now available ] 
 
 I'm very glad to announce the availability of an early draft of Chapter 2 of a book on F# which I'm currently in the process of co-authoring. The projected title of</description><dc:language>en-GB</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#8828718</link><pubDate>Mon, 04 Aug 2008 10:34:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8828718</guid><dc:creator>Eralp</dc:creator><description>&lt;p&gt;Thanks For book , It&amp;#39;s amazing..I &amp;#39;ll share all of my information about F# with all Turkish programmers at university!.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8828718" width="1" height="1"&gt;</description></item><item><title>re: Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#1224258</link><pubDate>Wed, 06 Dec 2006 19:14:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1224258</guid><dc:creator>dhoward</dc:creator><description>&lt;p&gt;thanks that helps. I suggest you add something like that to the chapter because the original statement is confusing to an imperative language programmer, such as myself, who think in terms of variables as memory locations that contain a value that can change. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1224258" width="1" height="1"&gt;</description></item><item><title>re: Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#1216859</link><pubDate>Wed, 06 Dec 2006 03:46:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1216859</guid><dc:creator>dsyme</dc:creator><description>&lt;p&gt;In reply to the above - &lt;/p&gt;
&lt;p&gt;&amp;quot;rebinding&amp;quot; a name to a new value is different to &amp;quot;changing the value itself&amp;quot; - e.g. even in F# Interactive after&lt;/p&gt;
&lt;p&gt;let x = 1&lt;/p&gt;
&lt;p&gt;let y() = x&lt;/p&gt;
&lt;p&gt;let x = 2&lt;/p&gt;
&lt;p&gt;then &amp;quot;y()&amp;quot; will still have the value &amp;quot;1&amp;quot;. If you want to really mutate values use&lt;/p&gt;
&lt;p&gt;let mutable x = 1&lt;/p&gt;
&lt;p&gt;let y() = x&lt;/p&gt;
&lt;p&gt;do x &amp;lt;- 2&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1216859" width="1" height="1"&gt;</description></item><item><title>F# helps show we're not Neanderthals</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#1215337</link><pubDate>Wed, 06 Dec 2006 02:21:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1215337</guid><dc:creator>Don Syme's WebLog on F# and Other Research Projects</dc:creator><description>&lt;p&gt;Well, sort of :-) One of our most recent scientific users of F# is Darren Platt , head of computational&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1215337" width="1" height="1"&gt;</description></item><item><title>re: Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#1186290</link><pubDate>Fri, 01 Dec 2006 23:00:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1186290</guid><dc:creator>dhoward</dc:creator><description>&lt;p&gt;regarding a statement in the draft chapter, there is something I don't understand. it says &lt;/p&gt;
&lt;p&gt;&amp;quot;in other languages a local “value” is called a local variable. However in F# you can’t change the immediate value of locals after they’ve been initialized, unless the local is explicitly marked as mutable. &amp;quot;&lt;/p&gt;
&lt;p&gt;however, in fsi the following rebinding of a local works without complaint, whereas the global rebind fails with the expected error message. &amp;nbsp;what am I missing?&lt;/p&gt;
&lt;p&gt;&amp;gt; let test x =&lt;/p&gt;
&lt;p&gt;- &amp;nbsp; &amp;nbsp; let a = 1&lt;/p&gt;
&lt;p&gt;- &amp;nbsp; &amp;nbsp; let a = 2&lt;/p&gt;
&lt;p&gt;- &amp;nbsp; &amp;nbsp; printf &amp;quot;%d %d\n&amp;quot; a x&lt;/p&gt;
&lt;p&gt;- ;;&lt;/p&gt;
&lt;p&gt;val test : int -&amp;gt; unit&lt;/p&gt;
&lt;p&gt;&amp;gt; test 1&lt;/p&gt;
&lt;p&gt;- ;;&lt;/p&gt;
&lt;p&gt;2 1&lt;/p&gt;
&lt;p&gt;val it : unit = ()&lt;/p&gt;
&lt;p&gt;&amp;gt; let a = 1&lt;/p&gt;
&lt;p&gt;- let a = 2&lt;/p&gt;
&lt;p&gt;- ;;&lt;/p&gt;
&lt;p&gt; &amp;nbsp;let a = 2&lt;/p&gt;
&lt;p&gt; &amp;nbsp;----^^&lt;/p&gt;
&lt;p&gt;stdin(142,4): error: FS0037: Duplicate definition of value 'a'&lt;/p&gt;
&lt;p&gt;stopped due to error&lt;/p&gt;
&lt;p&gt;&amp;gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1186290" width="1" height="1"&gt;</description></item><item><title>re: Draft Chapter 2 of "Expert F#": Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#1153082</link><pubDate>Sun, 26 Nov 2006 15:08:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1153082</guid><dc:creator>Song</dc:creator><description>&lt;p&gt;very intersting,i'll focus &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1153082" width="1" height="1"&gt;</description></item><item><title>Interesting Finds: September 6, 2006</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#743640</link><pubDate>Thu, 07 Sep 2006 05:34:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:743640</guid><dc:creator>Jason Haley</dc:creator><description>&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=743640" width="1" height="1"&gt;</description></item><item><title>Draft Chapter 2 of &amp;amp;quot;Expert F#&amp;amp;quot;: Essential Language Features</title><link>http://blogs.msdn.com/b/dsyme/archive/2006/09/06/draftchapter2.aspx#743460</link><pubDate>Thu, 07 Sep 2006 02:53:02 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:743460</guid><dc:creator>Heart of Sharpness (The MSR F# Team's blog at The Hub)</dc:creator><description>( Syndicated&amp;amp;amp;nbsp;from &lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/dsyme/archive/2006/09/06/DraftChapter2.aspx&amp;amp;amp;nbsp;"&gt;http://blogs.msdn.com/dsyme/archive/2006/09/06/DraftChapter2.aspx&amp;amp;amp;nbsp;&lt;/a&gt;)&lt;br&gt;I'm...&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=743460" width="1" height="1"&gt;</description></item></channel></rss>