Newsletter
Issue 153 2019-04-04
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
-
GHC Infrastructure Update by Ben Gamari
Since November we have been quietly working behind the scenes to make this new infrastructure a reality; this has been a massive project and however I’m happy to say we are now emerging on the other side and we are very happy with the result.
-
Extending the Persistent QuasiQuoter by Matt Parsons
The QuasiQuoter does a ton of stuff for you. In this post, we’re going to learn how to make it work for you!
-
GHC, Alpine, Stack, and Docker by Joe Kachmar
This repository is a small demonstration of the steps required to build an Alpine Linux Docker image with all the tools necessary to compile Haskell programs linked against musl libc.
-
Haskell coreutils -
cat
by AustinI’ve implemented a couple Unix core utilities in Haskell, and want to start a series of posts going through the details - starting with simple programs like
cat
. -
Hierarchies In a Hakyll Blog by Artem Chernyak
Hakyll didn’t support this out of the box, and I didn’t find examples of anyone using similar layouts. So, I created my own approach which I am now sharing.
-
How to use Foreign Function Interface with Stack: Part I by Samuel Barr
I had previously written this functionality in C for a school project. I had heard of Haskell’s function interface before, and figured this would be a good opportunity to learn it.
-
Idempotent Applicatives, Parametricity, and a Puzzle by Daniel Mlot
Some applicative functors are idempotent, in the sense that repeating an effect is the same as having it just once. An example and a counterexample are Maybe and IO, respectively.
-
Nanosmos: Writing a simple text-editor with brick by Tom Sydney Kerckhove
In this post we will write a simple purely functional text editor using brick, building on the previous single-line text editor: picosmos.
-
Parsing JSON with more context by Benjamin Esham
Sometimes a library wants you to produce a value of type
t
, but you’d like to have a value of typee
available when you do that and the API doesn’t offer a way to inject ane
in the right place. -
The Compose Newtype and its Applicative Instance by Florian Beeres
This post will give you a quick overview of the
Compose
data type and then explain how the applicative instance for that type works.
Jobs
In brief
- Applicative
- Building a Bigger World
dynamic
: dynamically typed programming made easy- Finding Success (and Failure) in Haskell
- Idiomatic monads in Rust
- Monthly Hask Anything (April 2019)
- Proving Addition is Commutative in Haskell using Singletons
salak
: Configuration (re)loader in Haskell.- You Don’t Need to Be Brilliant to Do Brilliant Work
Package of the week
This week’s package of the week is slist
, a package that implements the Slist
data structure which stores the size of the list along with the list itself.