<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-1700157236206200597.post3720127284642222356..comments</id><updated>2010-03-22T21:20:00.572-07:00</updated><category term='ruby'/><category term='linq'/><category term='clojure'/><category term='erlang'/><category term='programming'/><category term='continuation'/><category term='decorator'/><category term='manycore'/><category term='monad'/><category term='actor'/><category term='events'/><category term='parsing'/><category term='osx'/><category term='concurrency'/><category term='mutability'/><category term='c#'/><category term='turing'/><category term='shareever'/><category term='iterator'/><category term='sql'/><category term='python'/><category term='rx'/><category term='bits'/><category term='haskell'/><category term='reactive'/><category term='imagemagick'/><category term='productivity'/><category term='automation'/><category term='enumerator'/><category term='mediserve'/><category term='wes'/><category term='dtrace'/><category term='message-passing'/><category term='generator'/><title type='text'>Comments on Valued Lessons: Rx Simplified (Reactive Programming in Python)</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.valuedlessons.com/feeds/3720127284642222356/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html'/><author><name>Peter Thatcher</name><uri>http://www.blogger.com/profile/01092342988993218446</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-8841550146252859926</id><published>2010-03-22T21:20:00.567-07:00</published><updated>2010-03-22T21:20:00.567-07:00</updated><title type='text'>I guess that makes sense.  For the list monad, &amp;qu...</title><content type='html'>I guess that makes sense.  For the list monad, &amp;quot;select&amp;quot; would make sense as a name for &amp;quot;map&amp;quot; (list fmap), and &amp;quot;select many&amp;quot; would make sense for &amp;quot;mapcat&amp;quot; (list bind).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/8841550146252859926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/8841550146252859926'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1269318000567#c8841550146252859926' title=''/><author><name>Peter Thatcher</name><uri>http://www.blogger.com/profile/01092342988993218446</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-855974674'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-7383151017378604415</id><published>2010-03-22T06:27:27.992-07:00</published><updated>2010-03-22T06:27:27.992-07:00</updated><title type='text'>&amp;gt; It&amp;#39;s just that if you provide &amp;quot;bind&amp;...</title><content type='html'>&amp;gt; It&amp;#39;s just that if you provide &amp;quot;bind&amp;quot; and &amp;quot;unit&amp;quot; (called &amp;quot;select many&amp;quot; and &amp;quot;select&amp;quot; in LINQ, I think)&lt;br /&gt;&lt;br /&gt;LINQ&amp;#39;s Select is actually fmap.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/7383151017378604415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/7383151017378604415'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1269264447992#c7383151017378604415' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1628443408'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-3187046830363195731</id><published>2009-08-16T08:16:58.891-07:00</published><updated>2009-08-16T08:16:58.891-07:00</updated><title type='text'>Peter,

Thanks for the new post. The tests are doc...</title><content type='html'>Peter,&lt;br /&gt;&lt;br /&gt;Thanks for the new post. The tests are doctests http://docs.python.org/library/doctest.html although I prefer to use the Nose testrunner http://code.google.com/p/python-nose/ to collect and run tests - just run &amp;quot;nosetests&amp;quot; (or, without the setup.cfg, &amp;quot;nosetests --with-doctest&amp;quot;) to see that the test passes. Not that important, just allowed me to keep the stdout-based feel of your examples without a more elaborate TestCase setup. (And of course, shortly after my second comment I realized the answer was in the question. &amp;quot;No output&amp;quot; indeed.)&lt;br /&gt;&lt;br /&gt;I also particularly like a) this refactoring style of teaching a programming idea and b) to see refactorings through the lens of a version controlled repo.&lt;br /&gt;&lt;br /&gt;Thanks again, I&amp;#39;ll take some time to go through the runnable code soon.&lt;br /&gt;Luke</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/3187046830363195731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/3187046830363195731'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1250435818891#c3187046830363195731' title=''/><author><name>Luke Opperman</name><uri>http://www.blogger.com/profile/15747844664605443391</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-69031051'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-6465360238556838793</id><published>2009-08-14T17:54:29.782-07:00</published><updated>2009-08-14T17:54:29.782-07:00</updated><title type='text'>Luke,

Sorry, I usually make a runnable version of...</title><content type='html'>Luke,&lt;br /&gt;&lt;br /&gt;Sorry, I usually make a runnable version of the code, but I ended up splitting into two articles (I just published the latest one).  My last post is the runnable version of both put together.  I hope it helps.&lt;br /&gt;&lt;br /&gt;Feel free to take the code, fix it up, improve it, post it somewhere, etc.  &lt;br /&gt;&lt;br /&gt;I looked into your repo.  I don&amp;#39;t know how your test harness works exactly.  It seems weird that the tests are just comments.  But, I added the event firing code directly to main.py and ran main.py and got the correct output.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/6465360238556838793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/6465360238556838793'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1250297669782#c6465360238556838793' title=''/><author><name>Peter Thatcher</name><uri>http://www.blogger.com/profile/01092342988993218446</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-855974674'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-2907726957071233089</id><published>2009-08-12T20:52:02.561-07:00</published><updated>2009-08-12T20:52:02.561-07:00</updated><title type='text'>(I didn&amp;#39;t look long, but am confused why I cou...</title><content type='html'>(I didn&amp;#39;t look long, but am confused why I could not get:&lt;br /&gt;&lt;br /&gt;click   = Event()&lt;br /&gt;&lt;br /&gt;dlclick = click &amp;gt;&amp;gt; value_filter_r(&amp;quot;left&amp;quot;) &amp;gt;&amp;gt; doublize_r(&lt;br /&gt;    .01,&lt;br /&gt;    lambda l1, l2 : &amp;quot;double left&amp;quot;&lt;br /&gt;    )&lt;br /&gt;&lt;br /&gt;to still pass the original test with the final code. No output.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/2907726957071233089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/2907726957071233089'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1250135522561#c2907726957071233089' title=''/><author><name>Luke Opperman</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1007823246'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-8473640977117172276</id><published>2009-08-12T20:47:33.335-07:00</published><updated>2009-08-12T20:47:33.335-07:00</updated><title type='text'>I stuck this progression in a bitbucket mercurial ...</title><content type='html'>I stuck this progression in a bitbucket mercurial repository here: http://bitbucket.org/loppear/rx-python/ I hope that&amp;#39;s alright with you. A fun exercise and a fun video to copy&amp;amp;paste to.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/8473640977117172276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/3720127284642222356/comments/default/8473640977117172276'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html?showComment=1250135253335#c8473640977117172276' title=''/><author><name>Luke Opperman</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2009/08/simple-rx-reactive-programming-in.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-3720127284642222356' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/3720127284642222356' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1007823246'/></entry></feed>
