Issue 93

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.

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


  • GHC 8.4.1-alpha3 available

    The GHC development team is pleased to announce the third and likely last alpha release leading up to GHC 8.4.1. The 8.4.1 release marks the first release where GHC will be adhering to its new, higher-cadence release schedule.

  • Cache CI builds to an S3 bucket

    CI providers are not created equal, and their caching capabilities and limitations vary drastically, which can pose real problems for some projects.

  • The wizard monoid

    Recent versions of GHC 8.0 provides a Monoid instance for IO and this post gives a motivating example for why this instance is useful by building combinable “wizard”s.

  • Free monads for cheap interpreters

    Free monads are a nice way to structure this problem because interpretations of free monads can be defined, composed and combined very flexibly, allowing us to build up a library of interpreters for solving our problem.

  • Revisiting Monadic Parsing in Haskell

    Monadic Parsing in Haskell is a short paper that laid the groundwork for libraries like Parsec and Attoparsec. Although it was published in 1998 (almost 20 years ago!) it has aged gracefully and the code samples will run with almost no changes.

  • The magic “just do it” type class

    One of the great strengths of strongly typed functional programming is that it allows type driven development. When I have some non-trivial function to write, I first write its type signature, and then the writing the implementation often very obvious.

  • Redesigning Haskell docs

    After seven months working with Haskell daily at work, I realized that our community really misses something: a consistent, friendly and welcoming look.

  • Hakyll compiler to include working code samples

    Ensuring that the code you include in a blog post is up to date and works can be a bit of a pain. Often I’ll change code while writing a post and then I have to find and copy anything that has changed.

  • Semantic UI for Reflex DOM

    This library aims to provide a type safe Haskell wrapper around Semantic UI components, to allow easy construction of nice looking web applications in GHCJS.

  • Telegram bot and Haskell

    We are going to build a bot for Telegram instant messenger service which talks to database.


  • Tweag Internship Program

    Tweag I/O is inviting applications from students for our paid internship program this summer. If you’re a student excited about working with Haskell, Nix and similar things, then get in touch!

In brief

Package of the week

This week’s package of the week is overhang, a library providing combinators for clean, hanging lambdas. It offers variants of functions with parameter orders more conducive to finishing off the function call with a lambda.

Call for participation