<div dir="ltr"><b>Top Picks:<br></b><ul><li>Is <a href="http://haskell-servant.github.io/" target="_blank">Servant </a>the most type-safe HTTP server library ever? Are the type
signatures <a href="https://news.ycombinator.com/item?id=9519782#up_9520750" target="_blank">hard to read</a>? In addition to its utmost relevance as a web
library, Servant is also an awesome case study in the type safety vs type
readability trade-off spectrum, brought to you by Alp Mestanogullari and
Julian Arni. <a href="https://news.ycombinator.com/item?id=9519782" target="_blank">HN</a> and <a href="http://www.reddit.com/r/haskell/comments/35hiie/servant_04_released/" target="_blank">/r/haskell<br><br></a></li><li>Ozan Sener compiles Pandoc into JS via GHCJS and creates a web interface
to it using the <a href="https://github.com/ryantrinkle/reflex" target="_blank">Reflex FRP library</a>. <a href="https://github.com/osener/markup.rocks" target="_blank">Markup.Rocks</a> is much loved on <a href="http://www.reddit.com/r/haskell/comments/35ax22/ive_compiled_pandoc_with_ghcjs_and_built_an/" target="_blank">/r/haskell</a>. See also <a href="https://news.ycombinator.com/item?id=9512293" target="_blank">HN</a>.<br><br></li><li>Is Haskell a "Startup Secret Weapon"? Alexandr Kurilin reveals <a href="https://github.com/commercialhaskell/commercialhaskell/blob/master/usage/frontrow.md" target="_blank">adoption challenges</a> at <a href="https://www.crunchbase.com/organization/front-row" target="_blank">Front Row Education</a>. Among them, slow build times. Also,
"senior developers [that] get very frustrated when something wouldn't
compile for hours and they couldn't find any help to move forward."
Comments on <a href="https://news.ycombinator.com/item?id=9519924" target="_blank">HN</a> and <a href="http://www.reddit.com/r/haskell/comments/35h8vh/how_front_row_education_uses_haskell_for_nearly/" target="_blank">/r/haskell</a>.<br><br></li><li>At Facebook, Bryan O'Sullivan debugs <a href="http://www.serpentine.com/blog/2015/05/13/sometimes-the-old-ways-are-the-best/" target="_blank">aeson's gigabyte space leak</a> on
decoding a JSON megabyte of non-stop backslashes. Culprit? The streaming
interface didn't match the use case. In place of streaming, Bryan now
blasts bytes into a single big buffer, gaining 27x speed and 42x memory
reduction. Comments on <a href="https://news.ycombinator.com/item?id=9540389" target="_blank">HN</a>, <a href="http://www.reddit.com/r/programming/comments/35udjh/fixing_a_haskell_performance_bug_sometimes_the/" target="_blank">Proggit</a>, <a href="http://www.reddit.com/r/haskell/comments/35udfy/fixing_an_aeson_performance_bug_sometimes_the_old/" target="_blank">/r/haskell</a>.<br><br></li><li>Paul Chiusano's <a href="http://unisonweb.org/2015-05-07/about.html" target="_blank">Unison programming platform</a> hits the <a href="https://news.ycombinator.com/item?id=9512955" target="_blank">HN</a> and <a href="http://www.reddit.com/r/haskell/comments/35cop9/unison_a_nextgeneration_programming_platform/" target="_blank">/r/haskell</a>
headlines. Features include a browser-based UI that constrains edits to
those that are well-typed. Also, DRY-ness up the wazoo: every type and term is uniquely identified by a hash a la Git.<br><br></li><li><a href="http://www.reddit.com/r/haskell/comments/35bw0b/at_last_debian_unstable_has_working_arm_ghci_and/" target="_blank">Joey Hess reports</a> that Debian unstable now has a working GHCi for ARM. The Template Haskell challenges have been surmounted.<br><br></li><li><a href="http://www.garrisonjensen.com/2015/05/13/haskell-programs-are-lies.html" target="_blank">Garrison Jensen blows the whistle</a> on the impostor sieve on the front
page of Haskell.org. In jest. A festive one-upmanship of fondly treasured code
ensues on <a href="http://www.reddit.com/r/haskell/comments/35vc31/the_real_way_to_generate_a_list_of_primes_in/" target="_blank">/r/haskell</a>. And since bad publicity is better than no
publicity, we owe kudos to Garrison. <a href="https://news.ycombinator.com/item?id=9541478" target="_blank">HN-worthy</a>.<br><br></li><li><a href="https://www.fpcomplete.com/user/commercial/content/exceptions-best-practices" target="_blank">Michael Snoyman decries use of ExceptT IO</a> for exception handling because
the user exception data type creates misleading expectations of comprehensiveness. The gotcha is that it doesn't cover IO exceptions! Furthermore, distinct exception
types mean that the corresponding code can't compose. Instead? Use
MonadThrow. <a href="http://www.reddit.com/r/haskell/comments/35sk6w/best_practices_for_using_exceptions_an_fp/" target="_blank">/r/haskell<br><br></a></li><li><a href="http://jpmoresmau.blogspot.com/2015/05/eclipsefp-end-of-life-from-me-at-least.html" target="_blank">JP Moresmau steps down as chief of EclipseFP</a> and the companion Haskell
packages BuildWrapper, ghc-pkg-lib, and scion-browser. Without anyone to
take his place, the sun sets on EclipseFP. But the sun continues to
shine on ide-backend (<a href="http://haskell.1045720.n5.nabble.com/Haskell-Weekly-News-td5768107.html" target="_blank">previously reported</a>), a GHC API wrapper akin to
BuildWrapper. <a href="http://haskell.1045720.n5.nabble.com/IDE-backend-Atom-editor-td5809240.html" target="_blank">JP spitballs</a> on how he might move on to the Atom editor, jiggering it to use
ide-backend-client. <a href="http://www.reddit.com/r/haskell/comments/35y5v1/jp_moresmaus_blog_eclipsefp_end_of_life/" target="_blank">/r/haskell<br><br></a></li><li>Tatsuya
Hirose translates Go By Example into Haskell. <a href="https://gobyexample.com/" target="_blank">GBE</a> comprises code
samples annotated for an experienced
programmer new to Go. For <a href="http://lotz84.github.io/haskellbyexample/" target="_blank">this first cut</a>, Tatsuya stays close to the original and
creates Go-ish, imperative Haskell. Already good for Go-to-Haskell crossovers. Potentially excellent when done in idiomatic Haskell. <a href="http://www.reddit.com/r/haskell/comments/3586e3/haskell_by_example/" target="_blank">/r/haskell<br><br></a></li><li><a href="http://tomasp.net/blog/2015/against-types/" target="_blank">Tomas Petricek observes</a> the diversity of type theories and type systems
and posits harm in any attempt at a single all-encompassing capture of the meaning
of 'types'. What about unsound types? He doesn't offer a way out for
those stuck with the appellation. Comments on <a href="https://news.ycombinator.com/item?id=9545540" target="_blank">HN</a> and <a href="http://www.reddit.com/r/haskell/comments/35zzvu/against_the_definition_of_types_by_tomas_petricek/" target="_blank">/r/haskell</a>.<br><br></li><li>John De Goes launches a <a href="https://www.indiegogo.com/projects/record-all-lambdaconf-2015-talks" target="_blank">crowdfund</a> to solicit $15,000 for video-recording 70 talks at
LambdaConf 2015, which features many known Haskell programmers. <a href="http://www.reddit.com/r/haskell/comments/35n14p/indiegogo_record_all_lambdaconf_2015_talks/" target="_blank">/r/haskell<br><br></a></li><li>A redditor asks ex-Lispers <a href="http://www.reddit.com/r/haskell/comments/35bybo/lispers_of_haskell_whats_your_experience_using/" target="_blank">what it's like moving to Haskell</a>. "I miss
Lisp parens" is a frequent answer. Also, Lisp has a better REPL
experience. A biggie upside? The refactoring afforded by Haskell's type
system.<br><br></li></ul><div><b>Tip of the Week:<br></b><ul><li>When programming fractals, <a href="https://ghc.haskell.org/trac/ghc/ticket/10400#comment:3" target="_blank">use the LLVM backend</a> because it's "usually good at optimizing this kind of non-allocating code" as Reid Barton advises.<br></li></ul><br clear="all"><div><div>-- Kim-Ee</div></div>
</div></div>