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.

Featured

2019 State of Haskell Survey by Haskell Weekly Today (November 14) is the last day to fill out this year’s survey!

Writing GUI Applications with Threepenny GUI and Electron by Thomas Mahler Threepenny GUI is an awesome Haskell library for creating browser based applications running on localhost. Combining it with the Electron.js framework gives a powerful toolset for writing cross-platform standalone GUI applications completely in Haskell with a great functional reactive programming API.

HTTP Requests with Hreq by Lukwago Allan Hreq is a high-level easy to use type-driven HTTP client library inspired by Servant-Client. Hreq provides an alternative approach to type-safe construction and interpretation of API endpoints for Http client requests.

Introducing hs-speedscope - a way to visualise time profiles by Matthew Pickering In GHC-8.10 it will become possible to use speedscope to visualise the performance of a Haskell program. speedscope is an interactive flamegraph visualiser, we can use it to visualise the output of the -p profiling option.

Megaparsec 8 by Mark Karpov Another year has passed and it is time again for a new major version of Megaparsec. What is different this time though, is that this is the least disruptive major release ever.

RuneSlayer by Maksymilian Owsianny The general idea of RuneSlayer is to take the dopamine cycle/quick gratification/addiction forming mechanisms that are often employed in computer games (especially in the RPG genre) and use them for good, in the context of natural languages learning.

Named typeclasses in Haskell by Marco Perone One of the best features of Haskell are typeclasses. Still, it is not easily possible to have multiple implementation of the same typeclass for the same data type.

llvm-hs Kaleidoscope Tutorial by Luke Lau In the original LLVM Kaleidoscope tutorial, this abstract syntax tree (AST) is usually built by first lexing the program into separate tokens like identifiers and keywords, and then parsing it to build up the tree structure.

Jobs

Interos- We’re Hiring!!! (ad) Full Stack Haskell Software Engineer

Digital Asset looking for experienced Haskellers for the Language Team in NYC (ad) Digital Asset is a leading provider of distributed ledger technology (DLT) that solves real-world business challenges. We combine deep industry expertise with scalable technology, including a DLT platform and an intuitive smart contract language originally developed by Digital Asset, called DAML.

Generalist Engineer at SNP in Berlin

Trying to hire a Haskell developer? You should advertise with us!

In brief

Updates to the Validation course by Julie Moronuki Yes, weve updated the Validation course with two new lessons. Lesson 10 is about coercing, or converting between types that have the same underlying representation. Lesson 11 takes a long look at the prisms in the validation package and how to use them as another way to extend and generalize code wed already written.

Statically checked overloaded strings by Chris Done This gist demonstrates a trick I came up with which is defining IsString for Q (TExp a) , where a is lift -able. This allows you to write $$("...") and have the string parsed at compile-time.

Linear Relation Algebra of Circuits with HMatrix by Philip Zucker In this post, we are going to be talking about linear or affine subspaces of a continuous space. These subspaces are hyperplanes. Linear subspaces have to go through the origin, while affine spaces can have an offset from the origin.

Looking Ahead with More Steps! by Monday Morning Haskell In last week’s article, we set ourselves up to make our agent use temporal difference learning. But TD is actually a whole family of potential learning methods we can use.

Lesson 6: Tuples, Reading/Querying Types & Lists by Learning Haskell for Dummies

Haskell Survey by Haskell Weekly Podcast Jose Silvestri and Cameron Gera go over the 2019 State of Haskell Survey and encourage you to fill it out.

PureScript version 0.13.5 This is a small bugfix release to address some issues which were introduced in 0.13.4.

Package of the week

This week’s package of the week is fused-effects , a fast, flexible, fused effect system. It provides an encoding of algebraic, higher-order effects, includes a library of the most common effects, and generates efficient code by fusing effect handlers through computations.

Call for participation