Newsletter
Issue 411 2024-03-14
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
-
Botan: The first milestone by the Haskell Cryptography Group
What are you using cryptography for? Would you be interested in trying something new? Perhaps an alternate backend for your cryptography needs?
-
Extending destination-passing style programming to arbitrary data types in Linear Haskell by Thomas Bagrel
Three years ago, a blog post introduced destination-passing style (DPS) programming in Haskell, focusing on array processing, for which the API was made safe thanks to Linear Haskell. Today, I’ll present a slightly different API to manipulate arbitrary data types in a DPS fashion, and show why it can be useful for some parts of your programs. The present blog post is mostly based on my recent paper Destination-passing style programming: a Haskell implementation, published at JFLA 2024. It assumes basic knowledge of Linear Haskell and intermediate fluency in Haskell.
-
GHC 9.10.1-alpha1 is now available by Ben Gamari
The GHC developers are very pleased to announce the availability of the first alpha release of GHC 9.10.1.
-
GHC activities report: December 2023–February 2024 by Well-Typed
This is the twenty-second edition of our GHC activities report, which describes the work on GHC, Cabal and related projects that we are doing at Well-Typed. The current edition covers roughly the months of December 2023 to February 2024.
-
I’m betting on Call-by-Push-Value by Thunderseethe
You come upon a function argument at a fork in the road. If it takes the left road, it’ll evaluate itself and then be passed to its function. If it takes the right road, it’ll pass itself to the function to be evaluated somewhere down the road (🥁🐍). Let’s bet on which road will be faster.
-
Towards zero-downtime upgrades of stateful systems by Stevan
Most deployed programs need to be upgraded at some point. The reasons vary from adding new features to patching a bug and potentially fixing a broken state. Even though upgrades are an essential part of software development and maintenance, programming languages tend to not help the programmer deal with them in any way.
-
Why is defunctionalization good? by Michael Peyton Jones
Most explanations of defunctionalization focus on the fact that it turns higher-order programs into first-order programs. I think there is another way to look at it: defunctionalization changes the representation of closures in the program. In particular, it makes their representation visible in the source program. This opens up opportunities for optimization by both the user and the compiler.
Jobs
Trying to hire a Haskell developer? You should advertise with us!
In brief
-
Copilot 3.19 by u/ivanpd
We are very excited to announce Copilot 3.19. Copilot is a stream-based EDSL in Haskell for writing and monitoring embedded C programs, with an emphasis on correctness and hard realtime requirements. Copilot is typically used as a high-level runtime verification framework, and supports temporal logic (LTL, PTLTL and MTL), clocks and voting algorithms.
-
Double-X-Encoding - Encoding scheme to encode any Unicode string with only
\[0-9a-zA-Z_\]
by Adrian SieberAnd as we’ve been using it for the last year in production on airsequel.com without any problems and we like how it solves the “Unicode Identifier” problem, we’re now confident enough to share it with you!
-
Scotty 0.22 by ocramz
Another small but mighty release, with some bugfixes and some QoL improvements, as well as a number of new tests.
-
Stack 2.15.3 by Mike Pilgrem
Show & tell
- I’ve released a package candidate integrating katip with effectful by Eldritch Cookie
Provides a Katip and KatipContext instance for the Eff Monad and re-exports all of Katip’s API.
Call for participation
-
CFP: Haskell Symposium 2024 by J. Garrett Morris
The ACM SIGPLAN Haskell Symposium 2024 will be co-located with the 2024 International Conference on Functional Programming (ICFP). The Haskell Symposium presents original research on Haskell, discusses practical experience and future development of the language, and promotes other forms of declarative programming.
-
xmonad-contrib: Create a migration guide for
X.H.StatusBar
in the release announcement