<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Virtual Surreality</title>
	<atom:link href="http://grahamis.com/blog/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://grahamis.com/blog</link>
	<description>It&#039;s too real to be true</description>
	<lastBuildDate>Fri, 23 Mar 2012 06:30:14 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Comment on JaBOL &#8211; the language that really took off by Polyglot Programming &#8211; is it all Greek to you? - Virtual Surreality</title>
		<link>http://grahamis.com/blog/2007/01/18/jabol-language-that-really-took-off/comment-page-1/#comment-500</link>
		<dc:creator>Polyglot Programming &#8211; is it all Greek to you? - Virtual Surreality</dc:creator>
		<pubDate>Fri, 23 Mar 2012 06:30:14 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/weblog/?p=30#comment-500</guid>
		<description>[...] Java and C# are mostly object-oriented (although applications written in them generally aren&#8217;t) [...]</description>
		<content:encoded><![CDATA[<p>[...] Java and C# are mostly object-oriented (although applications written in them generally aren&#8217;t) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Assertions: actual or expected first? by Roger Wernersson</title>
		<link>http://grahamis.com/blog/2009/06/05/assertions_actual_or_expected_first/comment-page-1/#comment-499</link>
		<dc:creator>Roger Wernersson</dc:creator>
		<pubDate>Wed, 07 Mar 2012 12:09:11 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/2009/06/05/assertions_actual_or_expected_first/#comment-499</guid>
		<description>I would write

assertThat(actual).isEqualTo(expected)

because it looks the same as when I write

assertThat(actual).isNull()</description>
		<content:encoded><![CDATA[<p>I would write</p>
<p>assertThat(actual).isEqualTo(expected)</p>
<p>because it looks the same as when I write</p>
<p>assertThat(actual).isNull()</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Heroku, bundler, Ruby 1.9, Rails 3, RSpec 2 by Josh Graham</title>
		<link>http://grahamis.com/blog/2010/07/01/heroku-bundler-ruby19-rails3-rspec2/comment-page-1/#comment-493</link>
		<dc:creator>Josh Graham</dc:creator>
		<pubDate>Sat, 07 May 2011 05:40:39 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=246#comment-493</guid>
		<description>Cheers Jon, updated the post. Good stuff.</description>
		<content:encoded><![CDATA[<p>Cheers Jon, updated the post. Good stuff.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About by Josh Graham</title>
		<link>http://grahamis.com/blog/about/comment-page-1/#comment-492</link>
		<dc:creator>Josh Graham</dc:creator>
		<pubDate>Sat, 07 May 2011 05:28:54 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/weblog/blog/#comment-492</guid>
		<description>Hi Paul.

Simplistically it&#039;s a reference to different code organization an encapsulation between OO and FP.

OO tends to put behavior and data (i.e. the object&#039;s internal state) together in the class -- objects are passed a message that may contain data, which may or may not return a result but may update internal state. In many OO programs, this internal state is often mutable (but not always).
FP tends to build general functions that operate on data -- functions are passed data to manipulate and return a result. There is no state in the function that survives beyond the call. In many FP programs the data are immutable (but not always).

Obviously OO/FP hybrid languages like Scala and F# can combine these approaches.

Static or class methods in an OO language (usually in some &quot;utility&quot; library) can provide a similar experience in that they often separate the data (in your object) from behavior (in the utility method). If the OO language also supports lambdas then you can get an even closer experience with the use of higher-order functions (those that take other functions as arguments). Similar, but not quite the same :-)

Thanks for the question!
Josh</description>
		<content:encoded><![CDATA[<p>Hi Paul.</p>
<p>Simplistically it&#8217;s a reference to different code organization an encapsulation between OO and FP.</p>
<p>OO tends to put behavior and data (i.e. the object&#8217;s internal state) together in the class &#8212; objects are passed a message that may contain data, which may or may not return a result but may update internal state. In many OO programs, this internal state is often mutable (but not always).<br />
FP tends to build general functions that operate on data &#8212; functions are passed data to manipulate and return a result. There is no state in the function that survives beyond the call. In many FP programs the data are immutable (but not always).</p>
<p>Obviously OO/FP hybrid languages like Scala and F# can combine these approaches.</p>
<p>Static or class methods in an OO language (usually in some &#8220;utility&#8221; library) can provide a similar experience in that they often separate the data (in your object) from behavior (in the utility method). If the OO language also supports lambdas then you can get an even closer experience with the use of higher-order functions (those that take other functions as arguments). Similar, but not quite the same <img src='http://grahamis.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Thanks for the question!<br />
Josh</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on About by Paul Tait</title>
		<link>http://grahamis.com/blog/about/comment-page-1/#comment-491</link>
		<dc:creator>Paul Tait</dc:creator>
		<pubDate>Mon, 02 May 2011 09:42:31 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/weblog/blog/#comment-491</guid>
		<description>Just watched your video over at InfoQ given with Amanda Laucher. In one the slides you listed F# features and one was &quot;Separation of Functions &amp; Data&quot; which she explained was opposite to the OO idea of bundling methods and data together in a class.
 
Could you explain this concept or point me to some material on this subject?
 
Thanks Paul</description>
		<content:encoded><![CDATA[<p>Just watched your video over at InfoQ given with Amanda Laucher. In one the slides you listed F# features and one was &#8220;Separation of Functions &amp; Data&#8221; which she explained was opposite to the OO idea of bundling methods and data together in a class.</p>
<p>Could you explain this concept or point me to some material on this subject?</p>
<p>Thanks Paul</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Heroku, bundler, Ruby 1.9, Rails 3, RSpec 2 by Turadg</title>
		<link>http://grahamis.com/blog/2010/07/01/heroku-bundler-ruby19-rails3-rspec2/comment-page-1/#comment-490</link>
		<dc:creator>Turadg</dc:creator>
		<pubDate>Tue, 01 Feb 2011 03:31:13 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=246#comment-490</guid>
		<description>Jon, thanks for posting that. I missed it in the Heroku docs. http://docs.heroku.com/bundler</description>
		<content:encoded><![CDATA[<p>Jon, thanks for posting that. I missed it in the Heroku docs. <a href="http://docs.heroku.com/bundler" rel="nofollow">http://docs.heroku.com/bundler</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on YOW! Australia 2010 &#8211; Functional Languages workshops by Myrlar</title>
		<link>http://grahamis.com/blog/2010/11/09/yow-australia-2010-functional-languages-workshops/comment-page-1/#comment-489</link>
		<dc:creator>Myrlar</dc:creator>
		<pubDate>Tue, 07 Dec 2010 22:34:59 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=308#comment-489</guid>
		<description>Can you send me your powerpoint from your state of the art of .net talk?

:-)</description>
		<content:encoded><![CDATA[<p>Can you send me your powerpoint from your state of the art of .net talk?</p>
<p> <img src='http://grahamis.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Heroku, bundler, Ruby 1.9, Rails 3, RSpec 2 by Jon Wood</title>
		<link>http://grahamis.com/blog/2010/07/01/heroku-bundler-ruby19-rails3-rspec2/comment-page-1/#comment-488</link>
		<dc:creator>Jon Wood</dc:creator>
		<pubDate>Sat, 20 Nov 2010 14:19:53 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=246#comment-488</guid>
		<description>I don&#039;t know if you&#039;ve seen this, but Heroku have at some point since you wrote this updated their bundler support. You can now use the following to stop it attempting to install development and test dependencies:

heroku config:add BUNDLE_WITHOUT=&quot;development:test&quot;</description>
		<content:encoded><![CDATA[<p>I don&#8217;t know if you&#8217;ve seen this, but Heroku have at some point since you wrote this updated their bundler support. You can now use the following to stop it attempting to install development and test dependencies:</p>
<p>heroku config:add BUNDLE_WITHOUT=&#8221;development:test&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Heroku, bundler, Ruby 1.9, Rails 3, RSpec 2 by Steve</title>
		<link>http://grahamis.com/blog/2010/07/01/heroku-bundler-ruby19-rails3-rspec2/comment-page-1/#comment-486</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Sun, 10 Oct 2010 05:13:53 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=246#comment-486</guid>
		<description>This is very useful, as I just found that requiring ruby-debug causes the Heroku push to fail.

Thanks!</description>
		<content:encoded><![CDATA[<p>This is very useful, as I just found that requiring ruby-debug causes the Heroku push to fail.</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The more elements onChange, the more they stay the same by yeungda</title>
		<link>http://grahamis.com/blog/2010/09/21/the-more-elements-onchange-the-more-they-stay-the-same/comment-page-1/#comment-483</link>
		<dc:creator>yeungda</dc:creator>
		<pubDate>Sun, 26 Sep 2010 11:05:08 +0000</pubDate>
		<guid isPermaLink="false">http://grahamis.com/blog/?p=290#comment-483</guid>
		<description>I too have struggled through this issue (it affects both windows and mac) and have found some temporary comfort by running the following code after sendKeys:

firefoxDriver.executeScript(&quot;var event = document.createEvent(&#039;HTMLEvents&#039;);&quot; +
                &quot;event.initEvent(&#039;blur&#039;, true, true);&quot; +
                &quot;document.getElementById(&#039;&quot; + id + &quot;&#039;).dispatchEvent(event);&quot;)

dispatching the blur event in this way will trigger the change event too, if necessary.</description>
		<content:encoded><![CDATA[<p>I too have struggled through this issue (it affects both windows and mac) and have found some temporary comfort by running the following code after sendKeys:</p>
<p>firefoxDriver.executeScript(&#8220;var event = document.createEvent(&#8216;HTMLEvents&#8217;);&#8221; +<br />
                &#8220;event.initEvent(&#8216;blur&#8217;, true, true);&#8221; +<br />
                &#8220;document.getElementById(&#8216;&#8221; + id + &#8220;&#8216;).dispatchEvent(event);&#8221;)</p>
<p>dispatching the blur event in this way will trigger the change event too, if necessary.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

