Newsletter
Issue 254 2021-03-11
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
-
Announcing
safe-coloured-text
by Tom Sydney KerckhoveIt turns out that most “coloured text” libraries have quite nasty failure modes like environment-dependent crashes, so I made sure to make the library safe, wherever possible.
-
Building a Web app with FP - Part III - Test Test Test by Iori Matsuhara
In the previous parts, we implemented a simple web api, reading and writing from a database. This article will be about testing whether our application works correctly.
-
Conferer, a configuration library for Haskell by Lucas David Traverso
Conferer is a library that helps you configure your Haskell applications in an ergonomic way.
-
Higher Order Functions: Lambda calculus, Currying, Maps by Marty Stumpf
In this post, we’ll go through another important concept: higher order functions, which dramatically increase one’s expressive power.
-
Pruning Unused Haskell Dependencies by Dan Fithian
I’ve never been able to find a good Haskell library for pruning unused dependencies, so I wrote a tool to do it.
-
Status update: GHC on Apple M1 hardware by Ben Gamari
In this post I will describe recent work in GHC to enable native use of the compiler on M1 hardware, as well as some welcome improvements to GHC’s general ARM support coming in GHC 9.2.
-
Tutorial: Cellular Automata And Comonads by Siddharth Bhat
At the end of this blog post, you’ll learn how to simulate and render pretty cellular automata and the really cool algebraic structure that these possess!
Jobs
-
Haskell developer positions at Flipstone Technology (ad)
Flipstone is seeking experienced developers who want to work in Haskell. Visit https://flipstone.com/hiring to find out more and apply!
Trying to hire a Haskell developer? You should advertise with us!
In brief
-
Coinbase-Pro Haskell Client Version 0.9.2.0 Release by Michael Dunn
The main objective of this project was to provide a nice, clean example of what a client side integration library should look like using servant-client.
-
Fizzbuzz without if clauses by Gerald Benischke
In this writing I aim to complete a Fizzbuzz without if statements, conditionals, pattern matching or even using modulus calculations.
-
Flycheck and HLS by Magnus Therning
Since flycheck supports chaining checkers I thought there must be a way to have both checkers active at the same time.
-
In Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem.
-
Haskell Wingman with Sandy Maguire by Haskell Weekly Podcast
Special guest Sandy Maguire talks with us about using Haskell Wingman for program synthesis, designing bulletproof abstractions with algebra, wrangling type level programming in Haskell, and managing effects with his Polysemy library.
-
Haskell.org Call For Nominations by Rebecca Skinner
The term for this seat will end in October of 2021, so it will be a good opportunity for anyone who is interested in serving for a short time, perhaps to get a better idea of whether they would like to be re-nominated for a full term at the end of the year.
-
Matt Parsons, Author of Production Haskell: Succeeding in Industry with Haskell by Frontmatter
In this interview, Leanpub co-founder Len Epp talks with Matt about his background, how he got into programming and Haskell, some of the similarities between composing music and software, the inspiration for his book, some of the challenges of getting Haskell code into production, including hiring, and at the end, they talk a little bit about his experience as a self-published author.
-
Towards a prevalent alternative prelude? by Ben Gamari
The matter of the amending or adding to the base library has come up a fair amount in the HF Technical Agenda discussion. While such changes are of course possible, I do wonder whether this is the best solution to the problems that users feel.
-
Variables by Type Classes
We can use the
let
keyword to give an expression a name by which we can refer to it later.
Show & tell
- hindent-elm by Charles Joachim
Being an avid supporter of the elm-format style from the elm language, I forked hindent and modified it to follow elm-format guidelines as close as possible.