Issue 79

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? We love contributions! Tweet us at @HaskellWeekly or open a pull request.

Survey

We are excited to announce the first annual Haskell users survey! It is inspired by Rust’s recent surveys and Johan Tibell’s state of Haskell surveys from a few years ago. The goal of the survey is to better understand how Haskell users feel about the language, ecosystem, and community. So please, if you’re reading this: Take 10 minutes and fill out the survey. Thanks!

Featured

  • GHC 8.2.2 release candidate 2

    The GHC team is very pleased to announce the second candidate of the 8.2.2 release of the Glasgow Haskell Compiler. This is the second and hopefully last of two release candidates leading up the final 8.2.2 release.

    Editor’s note: Use this stack.yaml to easily test GHC 8.2.2-rc2 with Stack.

  • Persistent red-black trees in Haskell

    While Haskell is steadily gaining mainstream adoption in the industry, it still remains one of the most viable languages used as a teaching medium. In this post we will be looking at the construction and operations of red-black trees. Of special interest here would be the deletion of nodes, as the operation of delete is inherently opposed to Haskell’s fundamentals of immutability.

  • Motor: Finite-state machines in Haskell

    While writing my talk “Finite-state machines? Your compiler wants in!”, I have worked on porting the Idris ST library to Haskell. I call it Motor. Motor is an experimental Haskell library for building finite-state machines with type-safe transitions and effects.

  • Pandoc 2.0

    This is such a massive release to the universal markup converter that it’s hard to summarize. Tons of new features, changes, fixes, and improvements.

  • Building GHC: The package database

    While we usually build packages for use with GHC via cabal, the packages GHC knows about are those registered in the known package database. The global package database usually resides next to the ghc binary and is called package.conf.d.

  • Contributing to GHC

    This post serves as notes and explorations of my first patch to GHC. I’m going to start from the very beginning — so it might be kind of boring!

  • Dueling rhetoric of Clojure and Haskell

    Recently Lispcast wrote a post interpreting Rich Hickey’s controversial statements on static types. This post had some very interesting perspectives and some unfortunate misinformation.

  • Short ByteString and Text

    There are other under-appreciated types and libraries that complement ByteString and Text. These may be a better choice in some circumstances, but I believe many Haskellers are not aware of them. This post aims to rectify that.

  • The exodus to Streamgard, an epic poem

    The Serpent will assemble its minions, Early-close and Strictness of effects, and unleash its wrath upon our world. Foldl, son of Haskell and brother of Foldr, would lead humanity to its last bastion, Streamgard, and organize the final fight…

  • Dirt cheap Haskell consultancy

    TL;DR: Pay us $100 per month and we’ll be answering your questions about Haskell.

Jobs

Are you looking to hire a Haskell developer? If so, advertise with us!

In brief

Package of the week

This week’s package of the week is Importify, a tool that helps you to manage the import section of your Haskell project modules.

Call for participation

Do you have a beginner-friendly issue you want some help with? Email info@haskellweekly.news to get it included here!

Events

Know of an event that Haskell users would enjoy? Let info@haskellweekly.news know about it!