Haskell Weekly


Issue 272 2021-07-15

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.


  • Cast Haskell values with Witch by Taylor Fausak

    I’m happy to announce Witch, a library that aims to make those conversions easy and painless. This post will explain my motivation for creating the library and show some examples of how to use it.

  • Cheap interpreter, part 4: stack machines by Gary Verhaegen

    In this post, we’re going to explore a completely different approach: we’re first going to design a stack machine, then write an interpreter for the stack machine language, and finally write a compiler from our toy language parse tree to stack machine instructions.

  • Exploring linear traversable using generics by Sjoerd Visscher

    The design of a library like linear-base, Tweag’s standard library for Haskell’s linear types, requires many choices. One of these choices for linear-base is what a linear Traversable type class should look like.

  • Forget about lenses, let’s all implement array-backed anonymous records for fun by Artyom Kazak

    I propose a new weekend project: array-backed anonymous records. I am not going to walk you through the entire implementation, just enough to get you going.

  • Haskell Books by Travis Cardwell

    This page provides a tagged index of English books related to the Haskell programming language.

  • Haskell series part 1 by Pierre Guillemot

    After some retrospection I wanted to share my own introduction to Haskell based on my python experience. What I wished I had learnt first and what I wished I learnt later down the road.

  • Template Haskell Performance Tips by Matt Parsons

    One of the main downsides to TemplateHaskell is that it can cause compilation times to increase significantly. Let’s dig into these slowdowns and talk about how to make them a bit less onerous.


  • Senior Software Developer at Flipstone (ad)

    Work as part of a client development team alongside another Flipstone developer to build and maintain backend systems in Haskell at a socially-forward Texas retailer. Pair-programming with Flipstone and client developers; mentor client developers to develop their engineering skills and knowledge.

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

In brief

  • A bitter pill for Microsoft Copilot by Joey Hess

    Perhaps it’s time to think about non-copyright mitigations. Here is an easy way, for Haskell developers. Pick an extension and add code that loops when it’s not enabled.

  • Classical Logic vs Intuitionistic Logic by Type Theory Forall

    In this episode we host a discussion between Anupam Das and Thorsten Altenkirch on the role of constructivism in mathematics, logic and computer science.

  • Making Sense of Monads! by Monday Morning Haskell

    This week we’ll take another look at a function-related concept, but we’ll relate it to our new monads course. We’re going to explore the “function monad”.

Show & tell

Call for participation