Haskell Weekly


Issue 287 2021-10-28

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 eXchange — virtual conference (15 – 17 November 2021) (ad)

    Join us at the 10th Haskell eXchange, a 3-day online conference with content selected by developers for developers. Connect with fellow Haskellers while you learn new skills in practical, coding-based talks by 25 speakers, including keynotes by Simon Peyton Jones, Nadia Polikarpova, and Sukant Hajra.

  • Co-Applicative programming style by Gabriella Gonzalez

    This post showcases an upcoming addition to the contravariant package that permits programming in a “co-Applicative” (Divisible) style that greatly resembles Applicative style.

  • From conduit to streamly by Julian Ospald

    At GHCup I recently put a lot of effort into reducing the dependency footprint to improve build times. So in this post, I will shortly explain conduit and streamly and provide a simple migration guide.

  • Learn From Errors: Overlapping Instances by Sandeep Chandrika

    In this article, we’ll look at the overlapping instances error. We’ll understand the many variants of it and what the error means in each of those cases.

  • Proving Commutativity of Polysemy Interpreters by Sandy Maguire

    To conclude this series of posts on polysemy-check, today we’re going to talk about how to ensure your effects are sane. That is, we want to prove that correct interpreters compose into correct programs.

  • Tuning Haskell RTS for Kubernetes, Part 1 by No Red Ink

    We are also running Haskell in production on Kubernetes, but we never talked about that. It was a long journey and it wasn’t all roses, so we’re going to share what we went through.

  • Type-checking plugins, Part I: Why write a type-checking plugin? by Sam Derbyshire

    Type-checking plugins for GHC are a powerful tool which allows users to inject domain-specific knowledge into GHC’s type-checker. In this series of posts, we will explore why you might want to write your own plugin, and how to do so.


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

In brief

  • Monad Transformers — Part 1: An Introduction by Marut Khumtong

    Once you’ve learned some basic of “Monad”. The next step in the journey is “Monad Transformers”. In this series, we’ll use the basic building block of Haskell to learn about “Monad Transformers”.

  • Remote Interactive Course on Type-level Programming with GHC by Christine Gundry & Andres Löh

    We are offering our “Type-level programming with GHC” course again this autumn. This course is now available to book online on a first come, first served basis.

  • xmonad and xmonad-contrib 0.17.0 are available

    It’s been a little over 3 years since xmonad 0.15, and a little over 2 years since xmonad-contrib 0.16. A lot has happened. This post is an overview of the most important changes.

  • Your testing portfolio by Tom Sydney Kerckhove

    This post outlines different types and levels of testing that you can add to your testing portfolio.

  • ZuriHac 2022 by Zürich Friends of Haskell

    ZuriHac takes place Saturday 11 June – Monday 13 June 2022. We are super excited that after two years as a virtual event, ZuriHac 2022 will return as a physical event at the beautiful campus of OST (formerly HSR) located right next to lake Zürich!

  • Construye un entorno de Katas potente y flexible por Reynaldo Cordero

    El taller va a consistir en instalar y mostrar un entorno de calidad profesional, 100%software libre, de desarrollo de software para el lenguaje funcional Haskell, con metodología TDD, control de versiones, y adaptado al aprendizaje de la programación informática y de su aprovechamiento para aprender matemáticas de manera original y divertida.

  • Como trabajar con privacidad de datos y hacerlo bien por Ramón Soto Mathiesen

    En esta charla se mostrará como se pueden desarrollar aplicaciones donde es posible asegurarse en todo momento que es lo que pasa en cada rama del código. Esto permitirá crear aplicaciones, en las cuales, será más fácil asegurar que datos de información sensible, como son por ejemplo los de información personal (PII), no se pierdan debido a un error humano o un ataque malintencionado.

Show & tell

  • Core Warn by Jonathan Lorimer

    This plugin was inspired by these two blog posts from Well Typed: part 1, part 2. They discuss two scenarios where GHC’s core representation deviates drastically from what one might expect.

Call for participation