Haskell Weekly


Issue 112 2018-06-21

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.

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


  • Transity: The future of plain text accounting

    We found existing plain text accounting tools unsatisfactory, so we developed Transity. It models financial flows in terms of transactions and not debited / credited accounts.

  • Streaming with linear types

    In this post we delve further in that direction by considering linear types and uncover their potential to have the compiler enforce more properties statically.

  • Deprecating the Haskell markdown library

    I ended up creating my own library called markdown (inventive name, I know). Today, I’m considering deprecating this library, for a number of reasons:

  • Fixing 17 space leaks in GHCi, and keeping them fixed

    We recently noticed an interesting space leak in GHCi. If we loaded a set of modules, and then loaded the same set of modules again, GHCi would need twice as much memory as just loading the modules once.

  • Paperboy: A small PDF management utility

    I was frustrated that most PDFs have pretty useless file names. This tool helps renaming those files without too much fuss.

  • Sed: A debugging story

    This blog post is a semi-complete retelling of my debugging adventures on a particularly crazy bug. Consider it a combination of fun story telling for the audience and catharsis for myself.

  • Smart constructors that cannot fail

    In type theory, a refinement type is a type endowed with a predicate which is assumed to hold for any element of the refined type.

  • Trees that shrink

    We’d like to make sure the desugaring has been implemented correctly, perhaps by converting to some intermediate state where both the name and the correct de Bruijn index coexist peacefully.

  • Upcoming Stackage LTS 12 snapshot with GHC 8.4.3

    We’d like to give everyone enough time to prepare, which is why the planned release date is two weeks from the date of this post.

  • Contributing to GHC 2: Basic hacking and organization

    This week, we’ll establish our development cycle by looking at a very simple change we can make to the compiler.


  • Software engineer at ITProTV in Gainesville, Florida

    ITPro.TV is a fast-growing digital media business that focuses on continuing education in technical domains. We are currently accepting applications for full-stack software professionals to join our small but talented multidisciplinary team.

In brief

Package of the week

This week’s package of the week is Semilattices, a library that defines type classes for join- and meet-semilattices, and for upper and lower bounds, and a variety of instances for each.

Call for participation