
*Top picks:* - Bot attack on Trac https://mail.haskell.org/pipermail/ghc-devs/2015-March/008557.html pummels GHC HQ productivity! Do you know a thing or two about hardening web apps? Can you help? - A month ago http://haskell.1045720.n5.nabble.com/Haskell-Weekly-News-td5766529.html you read about the absence of a correct operational spec for Core. Christiaan Baaij http://ghc.haskell.org/trac/ghc/ticket/10121#comment:7 proffers rewriting rules for something "very much like Core" from his 2014 thesis on Digital Circuits in CλaSH, a tool designed for Computer Architecture for Embedded Systems (CAES). The consensus is that they probably also work for GHC Core. - Neil Mitchell reports Unable to load package Win32-2.3.1.0 https://ghc.haskell.org/trac/ghc/ticket/10165. The problem? SetWindowLongPtrW exists only on 64-bit. The haskell win32 shim wasn't switching to SetWindowLongW on 32-bit. Darren Grant steps up to offer a fix, which Austin Seipp promptly checks in. - Ki Yung Ahn http://haskell.1045720.n5.nabble.com/Do-we-have-idiom-for-lifting-a-state-mo... asks for a "wrapper that lifts actions of (State s1 a) to (State (s1,s2) a). " The answer? A function called "zoom" in lens libraries. - Chris Done https://groups.google.com/forum/#!msg/commercialhaskell/lRTDiTLIKi0/Kw0UGwa4... has started the ball rolling on GPG-based package signing. So far, Michael Snoyman and Neil Mitchell have had their keys signed by Chris. He invites others to join the party. - Levant Erkok https://ghc.haskell.org/trac/ghc/ticket/10215 joins Lennart Augustsson https://ghc.haskell.org/trac/ghc/ticket/9238 in hitting a bug with signed zeros http://en.wikipedia.org/wiki/Signed_zero. The function isNegativeZero breaks under optimizations. - James Stevenson https://blog.safaribooksonline.com/2015/03/30/high-performance-log-parsing-i... over at Safari Books Online reveals how they use Haskell to parse web logs more efficiently than Python. The top comment https://news.ycombinator.com/item?id=9294036 at Hacker News observes the absence of a proper benchmark pitting Python vs Haskell. James responds that they did an informal comparison that showed "the number of lines parsed/second [with Python] was far smaller than the attoparsec-based parser." Elsewhere, Luke Randall http://www.reddit.com/r/haskell/comments/30xugp/highperformance_log_parsing_... submits the link on reddit and thinks it's a "very gentle intro to parsing using attoparsec". - Ian Ross http://www.skybluetrades.net/blog/posts/2015/03/30/c2hs-snowmelt.html announces a new C2HS release christened "Snowmelt". Originally authored by Manuel Chakravarty, C2HS eases the pain of manually creating FFI shims for C libraries. The latest release, thanks to work contributed by Philipp Balzarek, achieves better cross-language alignment of C enum and Haskell Enum types, among other improvements. Reddit discussion here. http://www.reddit.com/r/haskell/comments/30u8pk/new_c2hs_release_0251_snowme... - Michael Snoyman https://www.fpcomplete.com/blog/2015/03/announce-ide-backend announces FPComplete's open sourcing of their IDE backend, comprising a wrapper around the GHC API. - Jon Sterling at PivotCloud https://ghc.haskell.org/trac/ghc/ticket/9539#comment:2 hits an STM TQueue bug initially reported by John Lato seven months ago. A sufficiently fast writer can cause the reader to never get scheduled, which leads to live-lock in Jon's production code. The fix looks to be as simple as lazifying a case into a let in readTQueue. Curiously, the code uses let in Simon Marlow's book on Haskell concurrency http://chimera.labs.oreilly.com/books/1230000000929/ch10.html#CO37-2 but not in the STM package you have on your machine. *Tweets of the week:* - Michael Neale https://twitter.com/michaelneale/status/567532684595851264: Haskell Quickcheck enters a bar, asks for 1 beer, 42 beers, -Inifinity beers, shaves bartenders beard, sets off a tactical nuke. - Dierk König https://twitter.com/mittie/status/582803534950862848: #Haskell is the gold standard for programming languages and #Frege makes it available on the #JVM -- Kim-Ee