Haskell Weekly

Newsletter

Issue 275 2021-08-05

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

  • What can I refactor for you today? by Ari Fordsham

    That’s why I’d like to offer my services, as a Haskell consultant, to maintain and refactor existing code, either yours or someone else’s.

  • Best practices for foreign imports by Ben Gamari

    When importing system libraries we strongly recommend that users use GHC’s capi calling convention.

  • Cheap interpreter, part 7: register machines by Gary Verhaegen

    In this post, we move further into the list of techniques presentetd in Neil’s talk and take a look at another type of low-level machine called a register machine.

  • GHC curiosities: Equality constraints in kinds by Ryan Scott

    In this post, we will investigate why this special case exists and explore the things one can do with it.

  • Haskell for the Elm Enthusiast by No Red Ink

    Over the years we’ve developed our style of writing Haskell, which can be described as very Elm-like (it’s also still changing!).

  • Haskell series part 2 by Pierre Guillemot

    As promised, what we are going to cover in this article are: lists and function declarations.

  • How IHP uses Haskell’s Type System to enforce good patterns by Jannis Jorre

    After reading this article you’ll hopefully understand how IHP is making use of Haskell’s strong typesystem to enforce proper use of patterns shared between all IHP applications, which prevents your production webapp from becoming a legacy webapp.

  • My ideal GraphQL framework for Haskell by Brandon Chinn

    Below, I’ll first go over what I’d like in a GraphQL server framework, and then what that ideal GraphQL framework might look like.

  • Stealing Impl from Rust by Matt Parsons

    With the new OverloadedRecordDot language extension, we can use the . character to access stuff on records.

  • Tying Shoes with GADTs

    Anyone who ties either of their shoes before putting them on is a no-go, though. And since my Haskell file is my world, and GHC is my enforcer, let’s make this state of affairs unrepresentable.

Jobs

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

In brief

  • Alternative by Type Classes

    The Alternative class is all about recovering from failure: try one thing, and if it doesn’t work, try another.

  • fromMaybe is Just a fold by Dan Soucy

    The Foldable type-class exists to capture the pattern of types which can be folded in some way using a function.

  • Haskell Foundation July Update by Andrew Boardman

  • When Howard Met Curry by Rob Rix

    The Curry-Howard correspondence is a map for moving between logic and type theory, relating propositions with types and proofs with programs.

Show & tell

  • haskell-language-server version 1.3 by Junyoung Clare Jang

    2021 July release of HLS arrives! This release includes binaries for GHC 9.0.1 and some new interesting features.

  • hs-term-emulator by Bit Connor

    This is a Terminal Emulator (like xterm) implemented entirely in Haskell.

  • time-ghc-modules by Tom McLaughlin

    Figure out why your builds are slow. This tool analyzes how long it takes GHC to compile your Haskell modules, broken down by phase.

Call for participation