Haskell Weekly


Issue 284 2021-10-07

Subscribe now! We'll never send you spam. You can also follow our feed. Read more issues in the archives.

Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community.


  • Haskell series part 5 by Pierre Guillemot

    This is the fifth article of a series on the functional language Haskell for beginners. In this article we are covering pattern matching and guards.

  • Tuple Prelude by Mitchell Vitez

    A Template Haskell Adventure

  • Clang-based GHC 9, done easy by Koz Ross

    For various reasons, you might want a Clang-based GHC on a platform where Clang is not the default compiler.

  • Data.Map.Strict.Map is not a strict map by Tom Ellis

    I was surprised when I learned that Data.Map.Strict.Map is not strict. Its laziness has serious consequences for attempts at space leak free programming in Haskell.

  • Episode 2: Lennart Augustsson by The Haskell Interlude

    The guest in our second episode is Lennart Augustsson. The hosts are Wouter Swierstra and Niki Vazou. We talk about Lennart’s long history with Haskell, about the various jobs he has had, all the compilers he has written, and about dependent types.

  • Haskell Foundation September Seven Month Update Extravaganza by Andrew Boardman

    We want to improve and become more effective, so in this monthly update let’s dive into what we’ve done over the last seven months, what we’ve learned, and where we want to go.

  • Porting to Polysemy by Sandy Maguire

    I wanted to spend some time today discussing how to actually go about Polysemizing a codebase. It’s not too onerous if you proceed cautiously.

  • Releasing QUIC and HTTP/3 libraries by Kazu Yamamoto

    As I described in The Current Plan for Haskell QUIC, I have released the followings: tls, http2, quic, http3, warp-quic, mighttpd2.

  • The “return a command” trick by Gabriella Gonzalez

    This post illustrates a trick that I’ve taught a few times to minimize the “change surface” of a Haskell program. By “change surface” I mean the number of places Haskell code needs to be updated when adding a new feature.

  • Soft Compatibility by Gautier di Folco

    After few weeks of work, we released GitLab support last week. We previously integrated GitHub, so we expected that GitLab would be roughly the same, and well, expectations set up for disappointment.


  • Software Engineer at ACI Learning

    We are currently accepting applications for full-stack software professionals to join our small, but talented, multidisciplinary team.

  • Senior Haskell developer (ad)

    Do you want to put real climate science in the hands of the public? We are looking for more team members who wants to join us as a senior haskell developer. Let’s change the world, together!

  • Full stack functional developer (ad)

    We are growing continuously and looking for more great team members. Do you want to put real climate science in the hands of the public? Let’s change the world, together!

Trying to hire a Haskell developer? You should advertise with us!

In brief

  • Improving the typed-process documentation by Tom Ellis

    In this article I explain how I improved the typed-process documentation to make this library shine brighter! Hopefully the techniques explained here can help other library authors with their documentation too.

  • Loop Breaker by Haskell Weekly Podcast

    Cameron Gera and Taylor Fausak discuss Drew Olson’s adventures in looping. What should you do if you want to loop forever, but break out of the loop early sometimes?

  • Monthly Hask Anything (October 2021)

    This is your opportunity to ask any questions you feel don’t deserve their own threads, no matter how small or simple they might be!

  • Swarm: a lot can happen in a week by Brent Yorgey

    Since then, the response has been fantastic: lots of people have tried it out, a few have even streamed themselves playing it on Twitch, and there has been lots of development activity.

Show & tell

  • Defect Process by Garrick Chin

    This is the partial source code for Defect Process, a 2d hack n’ slash game.

  • tmp-proc by Tim Emiola

    I’ve written a utility library, tmp-proc to simplify the use of dockerized backends from Haskell integration tests.

Call for participation

  • Join The New “Our Foundation Task Force”? by Matthias Toepp

    The Our Foundation Task Force is seeking its first members! This is an opportunity to help the Haskell Foundation expand its support for the community and at the same time encourage community support for the Foundation.