Newsletter
Issue 210 2020-05-07
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
-
Haskell on AWS Lambda - A Detailed Tutorial by Saurabh Nanda
This tutorial, along with the accompanying source-code walks you through the process of managing AWS Lambda Functions completely in Haskell.
-
Eat Haskell String Types for Breakfast by Ziyang Liu
This blog post summarizes, with bite-size bullet points, some knowledge on Haskell string types that I think is important to recognize when writing Haskell.
-
Environment variables parsing for free (applicatives) by Clément Delafargue
The
base
library provides a really bare-bones way to get them, withgetEnv
andlookupEnv
. This gets cumbersome quickly, if you want proper error reporting. -
Google Summer of Code: Haskell.org
In Google Summer of Code, we attempt to improve not only the language, but the whole ecosystem.
-
HLint 3.0 by Neil Mitchell
As of now, if your code can be parsed with GHC, it can probably be parsed with HLint. As new GHC releases come out, with new features and new forms of syntax, HLint will follow along closely.
-
Indexed Monads: Examples and Discussion by Adam Wespiser
Is it possible to compose parsers and state monad transformers with different input and output types?
-
Intervals and their relations by Marco Perone
I realised that interpreting Allen’s interval algebra relations without ambiguities was not trivial and in the end I decided to reimplement it in a more general and unambiguous way.
-
A Journey into Haskell and Open Source by Romain Gerard
I want to write something to celebrate the latest and I hope the last release of wstunnel, a TCP/UDP tunneling websocket tool, and share with you at the same time my story with Haskell and OpenSource projects.
-
JSON Parsing from Scratch in Haskell by Abhinav Sarkar
Writing a parser for JSON is a great exercise for learning the basics of parsing. Let’s write one from scratch in Haskell.
-
Template Haskell by Jonathan Dowland
Part of what I am doing at the moment is investigating Template Haskell to see whether it would usefully improve our system implementation.
Jobs
- Interos is Hiring Full Stack Haskell Software Engineers (ad)
At Interos, we are disrupting the way Fortune 500 companies and government agencies identify and respond to risk within their supply chains. We deliver the data and insights to business leaders that help them identify, visualize and understand the ripple effects that could impact their supply chains, before they happen. Recently funded by Kleiner Perkins and pivoting to an automated solution, Interos is in essence, a start-up SaaS environment.
Trying to hire a Haskell developer? You should advertise with us!
In brief
-
Algorithm Design with Haskell by Richard Bird and Jeremy Gibbons
This book is devoted to five main principles of algorithm design: divide and conquer, greedy algorithms, thinning, dynamic programming, and exhaustive search.
-
Documentation plans by Théophile Choutri
You may have seen me on various community channels and on social media to recruit motivated volunteers to help improve the documentation of the
base
library. -
Frozen Lake in Haskell by Monday Morning Haskell
Last time on MMH, we began our investigation into Open AI Gym. We started by using the Frozen Lake toy example to learn about environments.
-
A guide to monads in Haskell by Jean-Sébastien Basque-Girouard
Monads are the most important structures in Haskell but they are difficult to grasp for most programmers because they have few analogs in other languages.
-
Haskell Language Server version 0.1 by Alan Zimmerman
Changes: This is the initial version, so too many to list individually.
-
Hierarchical Free Monads: The Most Developed Approach In Haskell by Alexander Granin
It also provides a technical perspective on HFM in comparison to Final Tagless / mtl and demonstrates how to solve typical tasks with it.
-
More Random Access Lists by Donnacha Oisín Kidney
I’m going to look today at using the zeroless binary system to implement a similar structure, and see what the differences are.
-
overloaded-0.2.1: Overloaded:Categories by Oleg Grenrus
The
Overloaded:Categories
is another of the new features of recent overloaded 0.2.1 release. -
RecordDotSyntax language extension proposal by Shayne Fletcher
(The proposal has been accepted.) We propose a new language extension RecordDotSyntax that provides syntactic sugar to make the features introduced in the
HasField
proposal more accessible, improving the user experience. -
A taste of Bazel: Build a library, a service and Hspec tests by Clément Hurlin
In this post, we’ll show how to get started with Bazel on a small but non-trivial project, featuring a library, a web service and an Hspec test suite.