Issue 134 2018-11-22
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.
2018 state of Haskell survey results by Taylor Fausak
This post will graph the answers to the multiple-choice questions. I will not attempt to summarize the answers to free-response questions. I encourage any interested parties to download the raw results, do their own analysis, and share their results.
Hakyll part 2: Generating a sitemap XML file by Robert Pearce
This is part 2 of a multipart series where we will look at getting a website / blog set up with Hakyll and customized a fair bit.
Function totality: Abstraction tool in programming by Marko Dimjašević
Abstraction is a cornerstone of programming a complex software system. Without it, a complex software system is a complicated software system. In this article I will explore an important tool in achieving abstraction in programming: function totality.
A low-latency garbage collector for GHC by Ben Gamari
As real-time and distributed systems become common-place, latencies associated with memory management begin to limit the usability of garbage collected languages.
A new course begins by Julie Moronuki
This week has brought some changes that we’re pretty excited about. I’ve planned a whole course on all the functors in Haskell, called Functortown: A Map of the Territory.
Ex-Hack: A Haskell example-based documentation by Félix Baylac-Jacqué
Ex-Hack is an example-based documentation automatically generated using the packages posted on Stackage.
IHaskell on Windows! by Arvind Devarajan
The obvious advantage of using IHaskell on WSL is the fact that it looks very natural on a Windows system, not to forget that you have no need to depend on third-party solutions like VirtualBox to get your Linux on.
Stack(age): History, philosophy, and future by Michael Snoyman
Both the Stackage and Stack projects originated many years ago. At the time they started, they had specific goals geared at solving problems at the time. Some of those problems remain, some have changed. Also, as the projects have continued, some goals have morphed as well.
State monad comes to help sequential pattern matching by Dmitrii Kovanikov
Let’s try to solve one specific problem using the State monad and monad transformers to see how pure stateful computations work in Haskell and how they can be used to write better interfaces.
Termonad: A terminal emulator configurable in Haskell by Dennis Gosnell
Termonad is similar to other popular terminal emulators, but it is completely configurable in Haskell. It aims to be the “XMonad of terminal emulators”. Termonad is aimed at Haskellers who want a highly configurable terminal emulator.
Are you ready to build and maintain an extensive database for a high-growth startup? Lumi is looking for a Data Engineer who can manage the design and implementation of a highly structured database of information relating to every facet of our business.
Act as a trusted software expert within the organization. Design and develop new software products and architectures, coordinate maintenance activities. Coaching and mentoring junior team members.
- Elm series + PureScript coming up!
- Functional architecture: A definition
- Keeping formal verification in bounds
- Lambda World Seattle 2018
- MuniHac 2018 keynotes
- Raft: Adjoint’s implementation of the Raft consensus algorithm
- Some things about Yesod
- The state of Haskell 2018 survey: Take 2
- Upcoming Stackage LTS 13 snapshot with GHC 8.6.2
- VoidSpace: Well-typed typing tutor where you type types… in space
- What is your least favorite thing about Haskell in 2018?
- Why (I believe) Stackage succeeded
Package of the week
This week’s package of the week is Clash, a functional hardware description language. The CλaSH compiler transforms these high-level descriptions to low-level synthesizable VHDL, Verilog, or SystemVerilog.