Newsletter
Issue 245 2021-01-07
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
-
Lambda Days 2021 (ad)
Check out @LambdaDays - a vibrant event focused on functional programming and its growing community. With daily updates on their line-up they have exciting news for anyone interested Haskell, but also Scala, Erlang, Elixirlang, Clojure and more!
Note: number of Early Bird tickets is limited, book your online seat now to enjoy 4 days of amazing virtual experience: over 50 talks, Ask Me Anything Session with Speakers, Round Table Discussions, online quiz, chats and more.
-
A story about resource pool by Alexander Vershilov
A story of finding and fixing problems with the resource-pool package
-
Artyom’s Haskell toolbox by Artyom Kazak
I work as a Haskell consultant at Monadfix. I’ve been using Haskell for 10 years. Here are the libraries/tools I use.
-
Basic Data Scraping in Haskell Part 1: HTTP and JSON by Zac Wood
In this short series, I will walk you through scraping JSON data from the web using basic libraries, and eventually bringing it into the IHP web framework to be used in an actual application.
-
Compile-Time Evaluation in Haskell by Vladislav Zavialov
That’s why you are about to see not one, not two, but three ways to do compile-time evaluation in Haskell (there may be more, but let’s not get too esoteric).
-
Elementary programming by Michael Peyton Jones
So we have a dilemma: abstraction is great for the advanced users, but is inevitably going to make your code hard for less advanced users to understand.
-
A First Look at Info Table Profiling by Matthew Pickering & David Eichmann
In this post, we are going to use a brand-new (at the time of writing) and still somewhat experimental profiling method in GHC to show how to identify a memory leak and the code causing it.
-
Hacking Haskell in a Scottish castle by Satnam Singh
At some point I hope to move back to Scotland to start a software company in a castle. We will specialize in using Haskell to write high quality code for discerning customers.
-
Issue #2 by Bind the Gap
We are delighted to present our second issue of Bind The Gap (BTG), which also happens to be the special festive winter issue!
-
Lessons Learned From A Year Of Writing Haskell by Adam Wespiser
The majority of my Haskell experience is in the form of writing code for web servers that talk to databases serve up APIs, although I am very interested in compilers and language research!
Jobs
Trying to hire a Haskell developer? You should advertise with us!
In brief
-
Coindexed optics by Oleg Grenrus
Recently I run into documentation of
witherable
. There isWither
, which is like a lens, but not quite. I think that is closer to what coindexed optics could be. -
Compiler Performance in Haskell by Vanessa McHale
Here, I’d like to report my experience with my Kempe toy compiler, which is written in Haskell.
-
How exactly ExceptT differs to EarlyDo by Chris Done
After reading some sincere responses failing to see why I bothered with this at all, it seems I haven’t explained myself well.
-
HTTP share with S3 and Haskell by Austin
At work, we use Apache HTTP indexing for easy sharing of files internally; sometimes you just want a link rather than full NFS access.
-
Monthly Hask Anything (January 2021)
This is your opportunity to ask any questions you feel don’t deserve their own threads, no matter how small or simple they might be!
-
Solving Advent of Code “Handy Haversacks” in Type-level Haskell by Abhinav Sarkar
I have been trying to use type-level programming in Haskell to solve interesting problems since I read Thinking with Types by Sandy Maguire.
-
Theory of iteration and recursion by Li-yao Xia
So there is a sense in which these are equivalent, but that already presumes that they are not exactly the same.
-
Thoughts on the logging framework by Alexander Vershilov
In this post, I want to share my view on implementing the logging library, what features should be implemented with care, what should be irrelevant and why.
-
Trying to compose non-composable: monads by Murat Kasimov
How many times have you heard “monads do not compose”? I’ve spent a lot of time trying to contradict this statement.
-
The visitor pattern is essentially the same thing as Church encoding by Gabriella Gonzalez
This post explains how the visitor pattern is essentially the same thing as Church encoding (or Böhm-Berarducci encoding).
Show & tell
-
An “Happy new year” gist by Jeff Anto
2021 is already great!
-
haskell-language-server version 0.8.0 by Javier Neira
Support for ghc-8.10.3; new class plugin which helps to write class instances; eval plugin has been revamped, adding many features; new tactic to generate Arbitrary instances.