Haskell Weekly


Issue 300 2022-01-27

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 10 by Pierre Guillemot

    This is the tenth and last article of a series on the functional language Haskell for beginners. In this article we discover data types and Maybe.

  • Automating Wordle by Sandy Maguire

    After two days of doing it by hand, like a damn pleb, I decided it would be more fun to try to automate this game.

  • A case study on correctness and safety testing of stateful systems by Victor Miraldo

    In this post I will present a technique to do testing using traces which can can be used with arbitrary stateful systems.

  • The computation of appending lists at the type and value level by Boro Sitnikovski

    In this post, I will show different implementations of appending two lists together, written both in Haskell and in Idris, as well as some observations around the differences.

  • Databass, Part 3: Using the database by Joseph Morag

    We’re going to port the professional hitmen example from William Yao’s which type-safe database library should you use blog post to Databass and see how it stacks up.

  • Monoids are Composable List Summarizers by Chris Smith

    It goes something like this: a monoid is any way to summarize a list so that you can combine just the summaries of two lists to get a summary of their concatenation.


  • Haskell Developer at MLabs (ad)

    We are one of the leading Haskell consultancies in the fintech, blockchain and AI space, with a passion for Haskell and open source software. We are looking for a remote Haskeller to join our team. If you are excited about Haskell and are up for a new challenge, please apply here or visit our website! For any questions please email jobs@mlabs.city.

  • Haskell Software Engineer at Bitnomial (Chicago,IL,US Remote) (ad)

    Bitnomial is looking for Haskell Software Engineers. Bitnomial is a US based, CFTC licensed and regulated bitcoin derivatives exchange, headquartered in Chicago. Bitnomial develops and operates exchange, clearing, and settlement infrastructure for physically settled bitcoin futures and options.

  • Haskell Developer at Sonatype (ad)

    Sonatype uses Haskell to provide turn-key static analysis tooling. Growing and 100% remote including Canada, US, UK, and Columbia, Lift’s openings include research, data science, and engineering.

    Questions? Find Tom on Haskell’s discourse or twitter @MDTom.

  • Make the world a better place, outside of the crypto space. Join us! (ad)

    Bellroy helps people carry better. We’re Australia’s Best Place to Work, we’ve grown rapidly & we’re looking to expand our Tech Team. We’re not a software company, but software is one of our core competencies. Join us in our Melbourne office or work remotely from anywhere in the world.

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

In brief

  • Folding the unfoldable by Oleg Grenrus

    This (just a little) tongue-in-cheek post is “inspired” by the fact that statistics package wants unboxed vectors everywhere, for “performance” reasons, and that is soooo inconvenient.

  • Math-y List Operations by Monday Morning Haskell

    Earlier this month we explored some functions related to booleans and lists. Today we’ll consider a few simple helpers related to lists of numbers.

  • Nixpkgs overlays are monoids by Gabriella Gonzalez

    Nixpkgs supports overriding sets of packages using overlays and these overrides bear many similarities to object-oriented inheritance.

  • Review: Clowns to the Left of Me, Jokers to the Right by Sandy Maguire

    At a high level, CJ generalizes the results from The Derivative of a Regular Type is its Type of One-Hole Contexts, wondering about what happens to a zipper when we don’t require the elements on either side to have the same type.

  • Type-level DI Container prototype by Mark Seemann

    People sometimes ask me how to do Dependency Injection (DI) in Functional Programming, and the short answer is that you don’t.

Show & tell

  • PureNix by Jonas Carpay

    PureNix allows you to write that code in a fully-featured, strongly-typed language instead, and then compile to Nix.

  • WebAuthn server library for public key-based authentication by Silvan Mosberger

    If you have a web server written in Haskell that allows users to create and log into accounts, this library might interest you, and we’d love to have feedback as we refine the interface of the library.

Call for participation