Haskell Weekly

Newsletter

Issue 368 2023-05-18

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.

Featured

  • 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.

Jobs

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