Issue 88

Welcome to the first issue of Haskell Weekly in 2018! 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.

Want to see something featured in Haskell Weekly? Open an issue or pull request on GitHub.


  • Weakly typed Haskell

    Haskell is not a strongly typed language. In fact, my claim is broader: There’s no such thing as a strongly typed language. Instead, you can write your code in strongly typed or weakly typed style.

  • Building static Haskell binaries with Nix

    On Nix, we do in fact have the necessary static libraries and we can provide them as build inputs but keeping track of the library paths gets hairy quickly.

  • Advent of code and 25 days of Haskell

    The very interesting and bite-sized problems of advent of code seemed like a perfect place to play with it. In this post, I wrote about the most interesting experiences I had with Haskell over the last month.

  • Haskell package attack: January 2018

    To kick off the new year of 2018, this January I’m announcing a call for performance improvements to any random popular package of your choosing.

  • A beginner friendly introduction to Haskell containers

    I’ve recently started contributing to the containers package, and when familiarizing myself with the code I was reminded how overwhelming the APIs are for core data structures.

  • Neovim for Haskell development

    Here’s how I setup Neovim or Vim 8 to be a functional working environment. The focus will be on Haskell, but many of the plugins here are useful for any language in both Vim and Neovim.

  • AWS via Haskell part 5: Lambda

    Lambda is at the forefront of AWS’s “serverless” offerings. The gist of it is that you can write functions and upload them to Lambda and the system will take care of scaling them as appropriate.

  • Deriving bifunctor with generics

    Recently, I’ve been experimenting with deriving various type class instances generically, and seeing how far we can go before having to resort to Template Haskell.

  • N-ary functors

    Functor and Bifunctor are both in base, but what about Trifunctor? Quadrifunctor? There must be a better solution than creating an infinite tower of typeclasses.

  • Splitting and splicing intervals: Part 2

    Today, lets see how Liquid Haskell’s new type-level computation abilities let us reason about the sets of values corresponding to intervals, while using the SMT solver to greatly simplify the overhead of proof.


In brief

Package of the week

This week’s package of the week is capataz, a library that provides Erlang/OTP-style supervision trees.

Call for participation