<div>Welcome to issue 251 of the HWN, an issue covering crowd-sourced bits</div><div>of information about Haskell from around the web. This issue covers the</div><div>week of November 4 to 17, 2012.</div><div><br></div><div>

Quotes of the Week</div><div><br></div><div>   * Ralith: [why some people don&#39;t use conduits/pipes] also, I think at</div><div>     least some people are waiting for edwardk to write his version.</div><div><br></div>
<div>
   * edwardk: f -| g means that f a -&gt; b is isomorphic to a -&gt; g b (for</div><div>     arrows in the appropriate categories)</div><div><br></div><div>   * edwardk: @type (^.) </div><div>     lambdabot: s -&gt; Getting a s t a b -&gt; a</div>

<div>     byorgey: I would not like to be getting a stab, thank you</div><div><br></div><div>   * edwardk: I mean we&#39;re so oop even our member accessors have</div><div>     diagrams explaining their member accessors.</div>

<div><br></div><div>   * shapr: hylo! That&#39;s the category theorist greeting.</div><div><br></div><div>   * shachaf: type AbstractAlgebra a = Abstract a -&gt; a</div><div><br></div><div>   * nicoo: Yet many Writers concern themselves with issues of State,</div>

<div>     imaginary or real</div><div><br></div><div>   * rwbarton: when you learn C, watch out for the keyword &quot;return&quot;, it</div><div>     doesn&#39;t do what you&#39;d expect</div><div><br></div><div>   * Oleg: We show how to program with the law of excluded middle. We</div>

<div>     specifically avoid call/cc, which is overrated.</div><div><br></div><div>Top Reddit Stories</div><div><br></div><div>   * Haskell Platform 2012.4.0.0 is out</div><div>     Domain: self.haskell, Score: 89, Comments: 21</div>

<div>     On Reddit: [1] <a href="http://goo.gl/BPno4">http://goo.gl/BPno4</a></div><div>     Original: [2] <a href="http://goo.gl/BPno4">http://goo.gl/BPno4</a></div><div><br></div><div>   * A Khan Academy style tutorial on generalized algebraic data types</div>

<div>     Domain: <a href="http://apfelmus.nfshost.com">apfelmus.nfshost.com</a>, Score: 56, Comments: 7</div><div>     On Reddit: [3] <a href="http://goo.gl/kXQ0a">http://goo.gl/kXQ0a</a></div><div>     Original: [4] <a href="http://goo.gl/NWn3B">http://goo.gl/NWn3B</a></div>

<div><br></div><div>   * Cartesian Closed Comic #17: Typing</div><div>     Domain: <a href="http://ro-che.info">ro-che.info</a>, Score: 53, Comments: 24</div><div>     On Reddit: [5] <a href="http://goo.gl/6c4Uy">http://goo.gl/6c4Uy</a></div>

<div>     Original: [6] <a href="http://goo.gl/dZeDx">http://goo.gl/dZeDx</a></div><div><br></div><div>   * Cartesian Closed Comic #18: Equality</div><div>     Domain: <a href="http://ro-che.info">ro-che.info</a>, Score: 53, Comments: 8</div>

<div>     On Reddit: [7] <a href="http://goo.gl/8Qf9d">http://goo.gl/8Qf9d</a></div><div>     Original: [8] <a href="http://goo.gl/XCyuB">http://goo.gl/XCyuB</a></div><div><br></div><div>   * Natural Language Processing for the Working Programmer (in Haskell!)</div>

<div>     Domain: <a href="http://nlpwp.org">nlpwp.org</a>, Score: 50, Comments: 17</div><div>     On Reddit: [9] <a href="http://goo.gl/3yLTZ">http://goo.gl/3yLTZ</a></div><div>     Original: [10] <a href="http://goo.gl/BleWX">http://goo.gl/BleWX</a></div>

<div><br></div><div>   * Waiting for garbage collection can kill parallelism?</div><div>     Domain: <a href="http://ics.p.lodz.pl">ics.p.lodz.pl</a>, Score: 50, Comments: 7</div><div>     On Reddit: [11] <a href="http://goo.gl/iUPlD">http://goo.gl/iUPlD</a></div>

<div>     Original: [12] <a href="http://goo.gl/N0kiV">http://goo.gl/N0kiV</a></div><div><br></div><div>   * foldr is made of monoids</div><div>     Domain: <a href="http://byorgey.wordpress.com">byorgey.wordpress.com</a>, Score: 47, Comments: 12</div>

<div>     On Reddit: [13] <a href="http://goo.gl/Y0mz5">http://goo.gl/Y0mz5</a></div><div>     Original: [14] <a href="http://goo.gl/IxKov">http://goo.gl/IxKov</a></div><div><br></div><div>   * Solving Cabal Hell: vetted packages, multiple hackages</div>

<div>     Domain: <a href="http://yesodweb.com">yesodweb.com</a>, Score: 46, Comments: 67</div><div>     On Reddit: [15] <a href="http://goo.gl/dkzMz">http://goo.gl/dkzMz</a></div><div>     Original: [16] <a href="http://goo.gl/lDjuj">http://goo.gl/lDjuj</a></div>

<div><br></div><div>   * Parallel falling sand game with Repa</div><div>     Domain: <a href="http://github.com">github.com</a>, Score: 45, Comments: 16</div><div>     On Reddit: [17] <a href="http://goo.gl/G6MGG">http://goo.gl/G6MGG</a></div>

<div>     Original: [18] <a href="http://goo.gl/cP1zH">http://goo.gl/cP1zH</a></div><div><br></div><div>   * Agda, Epigram or Idris. Which one to learn</div><div>     Domain: self.haskell, Score: 38, Comments: 61</div><div>

     On Reddit: [19] <a href="http://goo.gl/3PGVo">http://goo.gl/3PGVo</a></div><div>     Original: [20] <a href="http://goo.gl/3PGVo">http://goo.gl/3PGVo</a></div><div><br></div><div>   * Fun with Fay - A ring oscillator</div>

<div>     Domain: <a href="http://skybluetrades.net">skybluetrades.net</a>, Score: 38, Comments: 6</div><div>     On Reddit: [21] <a href="http://goo.gl/mGvcZ">http://goo.gl/mGvcZ</a></div><div>     Original: [22] <a href="http://goo.gl/bJxCI">http://goo.gl/bJxCI</a></div>

<div><br></div><div>   * Introduction to Category Theory 1: Course Overview</div><div>     Domain: <a href="http://youtube.com">youtube.com</a>, Score: 37, Comments: 6</div><div>     On Reddit: [23] <a href="http://goo.gl/fbfYR">http://goo.gl/fbfYR</a></div>

<div>     Original: [24] <a href="http://goo.gl/Nx5SH">http://goo.gl/Nx5SH</a></div><div><br></div><div>   * HALO: Haskell to Logic through Denotational Semantics [PDF]</div><div>     Domain: <a href="http://research.microsoft.com">research.microsoft.com</a>, Score: 35, Comments: 6</div>

<div>     On Reddit: [25] <a href="http://goo.gl/V0RWs">http://goo.gl/V0RWs</a></div><div>     Original: [26] <a href="http://goo.gl/oCzUw">http://goo.gl/oCzUw</a></div><div><br></div><div>   * How to write Python in Haskell: State and Either</div>

<div>     Domain: <a href="http://stackoverflow.com">stackoverflow.com</a>, Score: 34, Comments: 25</div><div>     On Reddit: [27] <a href="http://goo.gl/Z80yb">http://goo.gl/Z80yb</a></div><div>     Original: [28] <a href="http://goo.gl/W933i">http://goo.gl/W933i</a></div>

<div><br></div><div>   * What is foldr made of?</div><div>     Domain: <a href="http://web.jaguarpaw.co.uk">web.jaguarpaw.co.uk</a>, Score: 30, Comments: 22</div><div>     On Reddit: [29] <a href="http://goo.gl/LdS9X">http://goo.gl/LdS9X</a></div>

<div>     Original: [30] <a href="http://goo.gl/I2uzX">http://goo.gl/I2uzX</a></div><div><br></div><div>   * How to shoot yourself in the foot with Haskell</div><div>     Domain: <a href="http://ics.p.lodz.pl">ics.p.lodz.pl</a>, Score: 29, Comments: 34</div>

<div>     On Reddit: [31] <a href="http://goo.gl/CcvZB">http://goo.gl/CcvZB</a></div><div>     Original: [32] <a href="http://goo.gl/SJYvd">http://goo.gl/SJYvd</a></div><div><br></div><div>   * Happstack, Fay, &amp; Acid-State: Shared Datatypes are Awesome</div>

<div>     Domain: <a href="http://happstack.com">happstack.com</a>, Score: 29, Comments: 8</div><div>     On Reddit: [33] <a href="http://goo.gl/AUtj6">http://goo.gl/AUtj6</a></div><div>     Original: [34] <a href="http://goo.gl/cYQr1">http://goo.gl/cYQr1</a></div>

<div><br></div><div>   * ANN: OpenGL packages update</div><div>     Domain: <a href="http://haskell.org">haskell.org</a>, Score: 28, Comments: 7</div><div>     On Reddit: [35] <a href="http://goo.gl/0SN7O">http://goo.gl/0SN7O</a></div>

<div>     Original: [36] <a href="http://goo.gl/PbtlT">http://goo.gl/PbtlT</a></div><div><br></div><div>   * How can I cleanly/consistently work with 3 different Exception-raising schemes?</div><div>     Domain: self.haskell, Score: 28, Comments: 22</div>

<div>     On Reddit: [37] <a href="http://goo.gl/Xf4sq">http://goo.gl/Xf4sq</a></div><div>     Original: [38] <a href="http://goo.gl/Xf4sq">http://goo.gl/Xf4sq</a></div><div><br></div><div>Top StackOverflow Questions</div>

<div><br></div><div>   * What are paramorphisms?</div><div>     votes: 39, answers: 1</div><div>     Read on SO: [39] <a href="http://goo.gl/V6rXq">http://goo.gl/V6rXq</a></div><div><br></div><div>   * In pure functional languages, is there an algorithm to get the inverse function?</div>

<div>     votes: 35, answers: 9</div><div>     Read on SO: [40] <a href="http://goo.gl/wBtqv">http://goo.gl/wBtqv</a></div><div><br></div><div>   * What are free monads?</div><div>     votes: 26, answers: 5</div><div>     Read on SO: [41] <a href="http://goo.gl/NAx8n">http://goo.gl/NAx8n</a></div>

<div><br></div><div>   * What&#39;s the status of current Functional Reactive Programming implementations?</div><div>     votes: 23, answers: 3</div><div>     Read on SO: [42] <a href="http://goo.gl/FmRYF">http://goo.gl/FmRYF</a></div>

<div><br></div><div>   * What does the “world” mean in functional programming world?</div><div>     votes: 22, answers: 7</div><div>     Read on SO: [43] <a href="http://goo.gl/dyM8c">http://goo.gl/dyM8c</a></div><div><br>

</div><div>   * Type-safe difference lists</div><div>     votes: 20, answers: 1</div><div>     Read on SO: [44] <a href="http://goo.gl/TlvF4">http://goo.gl/TlvF4</a></div><div><br></div><div>   * Is it possible to annotate a function&#39;s special properties (e.g. surjectivity)?</div>

<div>     votes: 12, answers: 3</div><div>     Read on SO: [45] <a href="http://goo.gl/uzanF">http://goo.gl/uzanF</a></div><div><br></div><div>   * Under what circumstances are monadic computations tail-recursive?</div><div>

     votes: 12, answers: 2</div><div>     Read on SO: [46] <a href="http://goo.gl/lPJef">http://goo.gl/lPJef</a></div><div><br></div><div>   * Should I use new Haskell language extensions in favour of the old ones?</div>
<div>
     votes: 12, answers: 2</div><div>     Read on SO: [47] <a href="http://goo.gl/xkc78">http://goo.gl/xkc78</a></div><div><br></div><div>Until next time,</div><div>Daniel Santa Cruz</div><div><br></div><div>References</div>

<div><br></div><div>   1. <a href="http://www.reddit.com/r/haskell/comments/12pxiq/haskell_platform_2012400_is_out/">http://www.reddit.com/r/haskell/comments/12pxiq/haskell_platform_2012400_is_out/</a></div><div>   2. <a href="http://www.reddit.com/r/haskell/comments/12pxiq/haskell_platform_2012400_is_out/">http://www.reddit.com/r/haskell/comments/12pxiq/haskell_platform_2012400_is_out/</a></div>

<div>   3. <a href="http://apfelmus.nfshost.com/blog/2010/06/01-gadts-video.html">http://apfelmus.nfshost.com/blog/2010/06/01-gadts-video.html</a></div><div>   4. <a href="http://www.reddit.com/r/haskell/comments/12ou1p/a_khan_academy_style_tutorial_on_generalized/">http://www.reddit.com/r/haskell/comments/12ou1p/a_khan_academy_style_tutorial_on_generalized/</a></div>

<div>   5. <a href="http://ro-che.info/ccc/17.html">http://ro-che.info/ccc/17.html</a></div><div>   6. <a href="http://www.reddit.com/r/haskell/comments/12nm3w/cartesian_closed_comic_17_typing/">http://www.reddit.com/r/haskell/comments/12nm3w/cartesian_closed_comic_17_typing/</a></div>

<div>   7. <a href="http://ro-che.info/ccc/18.html">http://ro-che.info/ccc/18.html</a></div><div>   8. <a href="http://www.reddit.com/r/haskell/comments/138crz/cartesian_closed_comic_18_equality/">http://www.reddit.com/r/haskell/comments/138crz/cartesian_closed_comic_18_equality/</a></div>

<div>   9. <a href="http://nlpwp.org/book/">http://nlpwp.org/book/</a></div><div>  10. <a href="http://www.reddit.com/r/haskell/comments/13a0ut/natural_language_processing_for_the_working/">http://www.reddit.com/r/haskell/comments/13a0ut/natural_language_processing_for_the_working/</a></div>

<div>  11. <a href="http://ics.p.lodz.pl/~stolarek/blog/2012/11/waiting-for-garbage-collection-can-kill-parallelism/">http://ics.p.lodz.pl/~stolarek/blog/2012/11/waiting-for-garbage-collection-can-kill-parallelism/</a></div>

<div>  12. <a href="http://www.reddit.com/r/haskell/comments/13cpm3/waiting_for_garbage_collection_can_kill/">http://www.reddit.com/r/haskell/comments/13cpm3/waiting_for_garbage_collection_can_kill/</a></div><div>  13. <a href="http://byorgey.wordpress.com/2012/11/05/foldr-is-made-of-monoids/">http://byorgey.wordpress.com/2012/11/05/foldr-is-made-of-monoids/</a></div>

<div>  14. <a href="http://www.reddit.com/r/haskell/comments/12prpr/foldr_is_made_of_monoids/">http://www.reddit.com/r/haskell/comments/12prpr/foldr_is_made_of_monoids/</a></div><div>  15. <a href="http://www.yesodweb.com/blog/2012/11/solving-cabal-hell">http://www.yesodweb.com/blog/2012/11/solving-cabal-hell</a></div>

<div>  16. <a href="http://www.reddit.com/r/haskell/comments/1306wn/solving_cabal_hell_vetted_packages_multiple/">http://www.reddit.com/r/haskell/comments/1306wn/solving_cabal_hell_vetted_packages_multiple/</a></div><div>

  17. <a href="https://github.com/tranma/falling-turnip">https://github.com/tranma/falling-turnip</a></div><div>  18. <a href="http://www.reddit.com/r/haskell/comments/133nja/parallel_falling_sand_game_with_repa/">http://www.reddit.com/r/haskell/comments/133nja/parallel_falling_sand_game_with_repa/</a></div>

<div>  19. <a href="http://www.reddit.com/r/haskell/comments/132kg0/agda_epigram_or_idris_which_one_to_learn/">http://www.reddit.com/r/haskell/comments/132kg0/agda_epigram_or_idris_which_one_to_learn/</a></div><div>  20. <a href="http://www.reddit.com/r/haskell/comments/132kg0/agda_epigram_or_idris_which_one_to_learn/">http://www.reddit.com/r/haskell/comments/132kg0/agda_epigram_or_idris_which_one_to_learn/</a></div>

<div>  21. <a href="http://www.skybluetrades.net/blog/posts/2012/11/13/fay-ring-oscillator/index.html">http://www.skybluetrades.net/blog/posts/2012/11/13/fay-ring-oscillator/index.html</a></div><div>  22. <a href="http://www.reddit.com/r/haskell/comments/134tr6/fun_with_fay_a_ring_oscillator/">http://www.reddit.com/r/haskell/comments/134tr6/fun_with_fay_a_ring_oscillator/</a></div>

<div>  23. <a href="http://www.youtube.com/watch?v=eu0rj5C2Otg">http://www.youtube.com/watch?v=eu0rj5C2Otg</a></div><div>  24. <a href="http://www.reddit.com/r/haskell/comments/12vvn2/introduction_to_category_theory_1_course_overview/">http://www.reddit.com/r/haskell/comments/12vvn2/introduction_to_category_theory_1_course_overview/</a></div>

<div>  25. <a href="http://research.microsoft.com/en-us/people/dimitris/hcc-popl.pdf">http://research.microsoft.com/en-us/people/dimitris/hcc-popl.pdf</a></div><div>  26. <a href="http://www.reddit.com/r/haskell/comments/12wovt/halo_haskell_to_logic_through_denotational/">http://www.reddit.com/r/haskell/comments/12wovt/halo_haskell_to_logic_through_denotational/</a></div>

<div>  27. <a href="http://stackoverflow.com/a/13432926/208257">http://stackoverflow.com/a/13432926/208257</a></div><div>  28. <a href="http://www.reddit.com/r/haskell/comments/13cz6b/how_to_write_python_in_haskell_state_and_either/">http://www.reddit.com/r/haskell/comments/13cz6b/how_to_write_python_in_haskell_state_and_either/</a></div>

<div>  29. <a href="http://web.jaguarpaw.co.uk/~tom/blog/posts/2012-11-04-what-is-foldr-made-of.html">http://web.jaguarpaw.co.uk/~tom/blog/posts/2012-11-04-what-is-foldr-made-of.html</a></div><div>  30. <a href="http://www.reddit.com/r/haskell/comments/12mnhu/what_is_foldr_made_of/">http://www.reddit.com/r/haskell/comments/12mnhu/what_is_foldr_made_of/</a></div>

<div>  31. <a href="http://ics.p.lodz.pl/~stolarek/blog/2012/11/how-to-shoot-yourself-in-the-foot-with-haskell/">http://ics.p.lodz.pl/~stolarek/blog/2012/11/how-to-shoot-yourself-in-the-foot-with-haskell/</a></div><div>  32. <a href="http://www.reddit.com/r/haskell/comments/12rlgt/how_to_shoot_yourself_in_the_foot_with_haskell/">http://www.reddit.com/r/haskell/comments/12rlgt/how_to_shoot_yourself_in_the_foot_with_haskell/</a></div>

<div>  33. <a href="http://www.happstack.com/c/view-page-slug/15/happstack-fay-acid-state-shared-datatypes-are-awesome">http://www.happstack.com/c/view-page-slug/15/happstack-fay-acid-state-shared-datatypes-are-awesome</a></div>

<div>  34. <a href="http://www.reddit.com/r/haskell/comments/1375q0/happstack_fay_acidstate_shared_datatypes_are/">http://www.reddit.com/r/haskell/comments/1375q0/happstack_fay_acidstate_shared_datatypes_are/</a></div><div>

  35. <a href="http://www.haskell.org/pipermail/haskell-cafe/2012-November/104329.html">http://www.haskell.org/pipermail/haskell-cafe/2012-November/104329.html</a></div><div>  36. <a href="http://www.reddit.com/r/haskell/comments/12mk7h/ann_opengl_packages_update/">http://www.reddit.com/r/haskell/comments/12mk7h/ann_opengl_packages_update/</a></div>

<div>  37. <a href="http://www.reddit.com/r/haskell/comments/12relk/how_can_i_cleanlyconsistently_work_with_3/">http://www.reddit.com/r/haskell/comments/12relk/how_can_i_cleanlyconsistently_work_with_3/</a></div><div>  38. <a href="http://www.reddit.com/r/haskell/comments/12relk/how_can_i_cleanlyconsistently_work_with_3/">http://www.reddit.com/r/haskell/comments/12relk/how_can_i_cleanlyconsistently_work_with_3/</a></div>

<div>  39. <a href="http://stackoverflow.com/questions/13317242/what-are-paramorphisms">http://stackoverflow.com/questions/13317242/what-are-paramorphisms</a></div><div>  40. <a href="http://stackoverflow.com/questions/13404208/in-pure-functional-languages-is-there-an-algorithm-to-get-the-inverse-function">http://stackoverflow.com/questions/13404208/in-pure-functional-languages-is-there-an-algorithm-to-get-the-inverse-function</a></div>

<div>  41. <a href="http://stackoverflow.com/questions/13352205/what-are-free-monads">http://stackoverflow.com/questions/13352205/what-are-free-monads</a></div><div>  42. <a href="http://stackoverflow.com/questions/13341937/whats-the-status-of-current-functional-reactive-programming-implementations">http://stackoverflow.com/questions/13341937/whats-the-status-of-current-functional-reactive-programming-implementations</a></div>

<div>  43. <a href="http://stackoverflow.com/questions/13340458/what-does-the-world-mean-in-functional-programming-world">http://stackoverflow.com/questions/13340458/what-does-the-world-mean-in-functional-programming-world</a></div>

<div>  44. <a href="http://stackoverflow.com/questions/13346200/type-safe-difference-lists">http://stackoverflow.com/questions/13346200/type-safe-difference-lists</a></div><div>  45. <a href="http://stackoverflow.com/questions/13281316/is-it-possible-to-annotate-a-functions-special-properties-e-g-surjectivity">http://stackoverflow.com/questions/13281316/is-it-possible-to-annotate-a-functions-special-properties-e-g-surjectivity</a></div>

<div>  46. <a href="http://stackoverflow.com/questions/13379060/under-what-circumstances-are-monadic-computations-tail-recursive">http://stackoverflow.com/questions/13379060/under-what-circumstances-are-monadic-computations-tail-recursive</a></div>

<div>  47. <a href="http://stackoverflow.com/questions/13422610/should-i-use-new-haskell-language-extensions-in-favour-of-the-old-ones">http://stackoverflow.com/questions/13422610/should-i-use-new-haskell-language-extensions-in-favour-of-the-old-ones</a></div>

<div><br></div>