Issue 185 2019-11-14
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.
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
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.
Full Stack Haskell Software Engineer
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.
Trying to hire a Haskell developer? You should advertise with us!
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
Q (TExp a), where
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.
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.