Haskell Weekly


Issue 128 2018-10-11

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.


  • An introduction to linear regression using Haskell

    I decided to stray a little off the beaten track and implement the programming exercises from Andrew’s course in Haskell instead. Haskell feels well-suited for this problem.

  • elm-beam

    I’ve been exploring the idea of an Elm compiler that produces assembly for the Erlang Virtual Machine. This essay documents some interesting parts of the project.

  • Fullstack Haskell: Reflex and Servant

    If it were 2005 you may have been able to get away with just blaze. But we are in 2018+, and JavaScript is a problem. In this blog post we will explore how to deal with JavaScript trough reflex and GHCJS.

  • RAII is better than the bracket pattern

    The RAII (Resource Acquisition Is Initialization) approach in both C++ and Rust leads to a nicer solution than even our bracket pattern in Haskell, by (mostly) avoiding the possibility of a premature close.

  • Announce: Haskell code explorer: Tool that helps understand Haskell codebases

    Haskell code explorer is a web application for exploring and understanding Haskell codebases. It provides the following features: Types and documentation on hover, go to definition, find references, type of each expression & semantic highlighting.

  • Comprehending monoids with class

    For expressing queries over collections of data, monoid comprehension can be more flexible, simpler, more efficient, and safer than its monadic counterpart.

  • Counting inversions with monoidal sparks

    Time for me to reveal the example I had in mind that led to the generalization in my previous post. Thanks for all the interesting comments: it seems like there are some interesting connections to be explored.

  • Detailed walkthrough for a beginner Haskell program

    This post walks through the development of a small Haskell program for aligning equals symbols in a block of text. This walkthrough targets a beginning programmer by describing several steps and concepts in extra detail.

  • Making a Haskell interface for the Rosie pattern language

    The Rosie Pattern Language (RPL) is a DSL for parsing strings which is more convenient and easier to work with than regular expressions. RPL is a Lua library with a C Foreign Function Interface (FFI). I noticed that there wasn’t a way to call it from Haskell.

  • Writing a simple web application

    I’ve talked about adding metrics to the Haskell application. I decided to prepare a full example that can be looked at and reused in later posts and projects.


In brief

Package of the week

This week’s package of the week is Autoexporter, a tool for automatically writing modules that simply re-export other modules.

Call for participation

Looking to participate in the fifth annual Hacktoberfest? Check out some of these issues with the “Hacktoberfest” label from Haskell repositories on GitHub!