Haskell Weekly


Issue 264 2021-05-20

Subscribe now! We'll never send you spam. You can also follow us on Twitter or with 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.


  • Accepted projects for GSoC 2021 announced by Jasper Van der Jeugt

    We received a ton of quality applications this year, thanks to everyone involved so far!

  • Anamorphisms aka Unfolds Explained by Marty Stumpf

    In the last post, we learned about folding nonempty structures. In this post, we’ll learn about another recursion scheme: anamorphisms, also referred to as unfolds.

  • Annotations in GHC by Shayne Fletcher

    Starting with ghc-9.2.1, parse trees contain “annotations” (these are, for example, comments and the locations of keywords). This represents a non-trivial upgrade of GHC parse trees.

  • Haskell on Actions by Patrick Brisbin

    In this series of posts, I’m going to show how we’re currently building our Haskell projects on GitHub Actions.

  • HF Tech Proposal #1: UTF-8 Encoded Text by Emily Pillmore

    This proposal outlines a project plan for the migration of the text package from its current default encoding (UTF-16) to a new default of UTF-8.

  • How I reduced my Haskell CI time by 84% by Ari Fordsham

    I know how confounded I was by CI before I got into it, and how straightforward it seems now, so I thought I’d write down my experiences for anyone following in my footsteps.

  • Module organization guidelines for Haskell projects by Gabriel Gonzalez

    This post collects a random assortment of guidelines I commonly share for how to organize Haskell projects.

  • The Simple Haskell Handbook by Marco Sampellegrini

    A project-driven approach to practical Haskell development. Start from zero lines of code and finish with a working CI Server. Step by step. One type error at a time.

  • Transpiling a large PureScript codebase into Haskell, part 1: The pipeline by Artyom Kazak

    As described in the introduction to the series, we wrote a PureScript to Haskell transpiler. In this post, I will describe the overall structure of the transpiler.


  • Haskell @ Mercury

    Mercury is building a bank for startups. We’re hiring Haskell engineers (generalist and backend). Apply if you want to work with Haskell/Yesod/Persistent and React/Redux/Typescript. You can check out <www.lifeatmercury.com> (pw: charlietuna). Reach out to veronica@mercury.com with questions.

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

In brief

  • Do not default to HashMap by Oleg Grenrus

    Map is using Ord (total order), and most operations are O(log n). HashMap is using Hashable (some hash), and most operations are O(1). HashMap is obviously better! It depends.

Show & tell

  • New Haskell Foundation website

  • Copilot version 3.3 by Ivan Perez

    We are pleased to announce the release of Copilot 3.3, a stream-based DSL for writing and monitoring embedded C programs, with an emphasis on correctness and hard realtime requirements.

Call for participation