Haskell Weekly


Issue 229 2020-09-17

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.


  • My new book Algebra-Driven Design is now finished! by Sandy Maguire

    I am thrilled to announce my new book, Algebra-Driven Design. It’s the culmination of two rewrites and a year of research, and comes with a foreword written by John Hughes, the inventor of QuickCheck. In the book, we take a fundamentally different approach to the software design process, focusing on deriving libraries from equations, algebraic manipulation and well-studied mathematical objects.

  • Bazel, Haskell, and Build-System Joy by Patrick Thomson

    What follows is a brief overview of the Bazel experience, and the process of porting a large, multi-project repository to support either cabal build or bazel build.

  • Contravariant functors are Weird by Sanjiv Sahayam

    Covariant functors (which are modelled by the Functor typeclass) are quite straightforward but contravariant functors as their name implies seem to be the complete opposite.

  • Fun with Haskell by Pritesh Shrivastava

    I’m roughly halfway into the book & wanted to talk about some cool Haskell features I’ve learned so far.

  • Improving QUIC APIs of the TLS library in Haskell by Kazu Yamamoto

    This article describes how Olivier and I improved the thread-based APIs.

  • A “very typed” container for representing microcode by Gergő Érdi

    I’ve been thinking a bit about describing microcode lately. My motivation was the Intel 8080-compatible CPU I’ve been building for my upcoming Clash book.


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

In brief

  • A design for paths in Cabal by Oleg Grenrus

    Where a big part of Cabal is about interpreting your-package.cabal file, also an important part of it and also cabal-install are filepaths.

  • Agda Implementors’ Meeting XXXIII by Jesper Cockx

    The thirty-third Agda Implementors’ Meeting will take place between 2020-10-12 and 2020-10-23. Everyone who uses Agda is invited to attend. Due to the current pandemic the meeting will be held online.

  • Aggressive refactoring by Simon Shine

    Here is a small example of aggressive refactoring in Haskell.

  • Haskell Ecosystem Experience Reports

    Monadfix is collecting informal experience reports about Haskell libraries, build tools, etc, from industrial Haskell users. If you used something at work and think your experience could be useful to others, it belongs here.

  • My Type-Safe Blog in Haskell by Jonathan Reeve

    All of this I achieve using the wonderful static site generator Rib, which built on the Haskell build tool Shake.

  • New Libraries Proposal Process by Daniel Cartwright

    There is a new Libraries Proposal process, inspired by the GHC Proposals process.

  • Tensor Chain Contraction with Refolds by David Anekstein

    In a previous post we utilized recursion schemes in prototyping a genetic algorithms library. I wanted to look more into their use cases and was happy to discover that they could even be leveraged for dynamic programming.

Show & tell

  • pretty-simple version 4.0 by Dennis Gosnell

    This includes a significant rewrite to use the prettyprinter library, which has made it much easier for us to implement more flexibility in output options, and thus satisfy some long-standing feature requests.

  • roboservant by Mark Wotton and Samuel Schlesinger

    Automatically fuzz your servant apis in a contextually-aware way.

  • WebGear by Raghu Kaippully

    WebGear helps to build composable, extensible, and type-safe HTTP APIs. This is one of the initial releases but is fairly feature-rich already.

Call for participation