Issue 227 2020-09-03
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.
Actually, Maybe is Great by Dave Della Costa
Maybelets us avoid the hazards and frustration in dealing with
NULLvalues, and helps us eliminate boilerplate significantly.
Bootstrapping a community via hackathons by Don Stewart
I recently gave an interview to Jasper Van der Jeugt as part of the Haskell Zurich Meetup, on the history of hackathons in the Haskell community.
Code Pray Love: Interview with Oli Makhasoeva by Denis Oleynikov
We talk about their experience organizing Haskell Love, how they kept it accessible for developers of all levels, and what things one should definitely keep in mind when organizing an online conference.
Dynamic scoping is an effect, implicit parameters are a coeffect by Edward Z. Yang
Implicit parameters have a reputation of being something you shouldn’t use, whereas dynamic scoping via the reader monad is a useful and well understood construct. Why the difference?
We explicitly motivate the subtle intricacies of Hinze and Paterson’s Finger Tree datastructure, by step-wise refining a naive implementation.
Handing over ghcide to the Haskell community by Moritz Kiefer
Digital Asset has made the decision to turn ghcide into a proper community project under the haskell github organization.
This guide references some syntax and patterns used when writing programs in the Haskell language.
Implementing a GHC Plugin for Liquid Haskell by Alfredo Di Napoli
In this blog post we’ll explore how we turned LiquidHaskell into a GHC Plugin, and all the challenges we had to overcome along the way.
Un-obscuring a few GHC type error messages by Ziyang Liu
Some of the GHC type error messages that can potentially lead to bewilderment are discussed in this post.
WebUI for Haskell tooling! by Csaba Hruska
This time I’d like to tell the story why and how I learned to build web UI based compiler tools.
Trying to hire a Haskell developer? You should advertise with us!
Fixed points of indexed functors by Oleg Grenrus
I was lately thinking about fixed points, more or less.
Interactive Reanimate playground by David Himmelstrup
Here you can write Haskell code and have it render directly to your browser.
LTS 16 uses ghc-8.8.4 as of LTS 16.12 by Dan Burton
LTS 16.12, the latest update to LTS 16, includes an upgrade from ghc-8.8.3 to ghc-8.8.4.
Should Purescript’s Partial instead be called Unsafe? by Henri Tuhola
Purescript’s partial functions aren’t observable in this way though, they may become preconditions that aren’t encoded in the type at the moment.
Show & tell
Accelerate version 1.3 by Trevor McDonell
This release includes many quality-of-life improvements for defining and using your own data types in embedded code.
cabal-fmt version 0.1.4 by Oleg Grenrus
cabal-fmt-0.1.4is a small release. I made
--no-cabal-fileto scratch my itch, and fragments partly to highlight that not every feature can exist in Cabal, but is very fine for preprocessors.
Clickhouse-haskell by Shi You
ClickHouse Haskell Driver with HTTP and native (TCP) interface support.
graphql-client by Brandon Chinn
A client for Haskell programs to query a GraphQL API.
hspec-expectations-json by Freckle
Hspec expectations for JSON values.
Supernova by Gabriel Volpe
Apache Pulsar client for Haskell.