Haskell Weekly


Issue 368 2023-05-18

Subscribe now! We'll never send you spam. You can also follow us on Twitter or with 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.


  • Bound by a Free-Monad-like Structure by Dennis Gosnell

    This post explains a little background for bound, and then shows my own definition using the free-monad-like structure.

  • Learn Contravariant in 5 minutes by Jason Shipman

    There is another “mapping” typeclass out there - Contravariant - that we likely don’t bump into as often as Functor.

  • Summer of Haskell 2023 Project Selections by Aaron Allen

    Summer of Haskell 2023 is off to a great start and we have some exciting news to share! We received many quality proposals from which to choose and our mentors have made their selections.

  • Tidal 2.0 beatMode (TidalCycles vs TidalBeats?) by Alex McLean

    I’ve been rewriting Tidal again for a while but resisting actually using it, mostly out of a weird sense of delayed gratification.

  • Working with Haskell CallStack by Matt Parsons

    GHC Haskell provides a type CallStack with some magic built in properties. Notably, there’s a constraint you can write - HasCallStack - that GHC will automagically figure out for you.


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

In brief

Show & tell

  • automation-service by Dave Della Costa

    automation-service is a tool for setting up simple-to-complicated home automations, like triggering lighting to go on when you enter a room, or reading from and responding to sensors — and much more.

  • unleash-client-haskell by Eirik Meland & Even Brenden

    Unleash is an open-source feature flag management service. This is a client SDK for use with Haskell applications.

  • yes-browser by Hamza Maimoune

    This is an experimental browser to explore the challenges posed by browsers and what they should be constituted of.

Call for participation