Newsletter
Issue 189 2019-12-12
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
-
Gluing together animations by David Himmelstrup
Introducing Reanimate, a batteries-included way of gluing together different technologies: SVG as a universal image format, LaTeX for typesetting, ffmpeg for video encoding, inkscape/imagemagick for rasterization, potrace for vectorization, blender/povray for 3D graphics, and Haskell for scripting.
-
Haskell vs OCaml by Mark Karpov
This is a comparison between the two languages by someone who has written code professionally in both.
-
Venzone by Francesco Ariis
I am pleased to announce the release of Venzone, an ASCII platform/adventure game.
-
Main is not pure by Adam McCullough
If you stick around long enough, you’ll hear something quite curious — people will describe
main
as a pure function. -
Serving HTTP Content with Fused-Effects by Patrick Thomson
I’ll show you how to use
fused-effects
’s APIs to build a minimal but aesthetically-pleasing syntax for handling HTTP requests and serving HTTP content. -
Collection of Haskell Articles by Michael Oswald
I compiled all articles into a single PDF in LaTeX book format.
-
Optics By Example by Chris Penner
This book takes you from beginner to advanced using Lenses, Traversals, Prisms, and more!
-
Announcing the
filepath-bytestring
Haskell library by Joey Hessfilepath-bytestring
is a drop-in replacement for the standard Haskellfilepath
library, that operates onRawFilePath
rather thanFilePath
. -
Casa: Content-Addressable Storage Archive by Chris Done
Casa stands for “content-addressable storage archive”, and also means “home” in romance languages, and it is an online service we’re announcing to store packages in a content-addressable way.
-
Splitting Persistent Models by Matt Parsons
I’ve been working on this at work, and it’s made a big improvement in our overall compile-times.
Jobs
-
Interos is Hiring Full Stack Haskell Software Engineers (ad)
At Interos, we are disrupting the way Fortune 500 companies and government agencies identify and respond to risk within their supply chains. We deliver the data and insights to business leaders that help them identify, visualize and understand the ripple effects that could impact their supply chains, before they happen. Recently funded by Kleiner Perkins and pivoting to an automated solution, Interos is in essence, a start-up SaaS environment.
-
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.
Trying to hire a Haskell developer? You should advertise with us!
Software
- BazQux Reader — your friend for reading feeds (ad)
Try fine RSS feed reader written in Haskell and Ur/Web. Read blogs, Twitter, Facebook pages and Telegram channels in one place. Enjoy good typography. Search, filter, bookmark and share. Make your own algorithm free feed and support independent Haskell developer by purchasing a subscription.
In brief
-
GHC-8.10.1-alpha2 released by Ben Gamari
The GHC team is happy to announce the availability of the first alpha release in the GHC 8.10 series.
-
New Haskell PhD thesis, on Backback foundations and modularity by Scott Kilpatrick
Recently I completed my PhD that kicked off the whole Backpack project.
-
My Takeaways: Fernando Alegre’s talk on CodeWorld in Louisiana by Chris Smith
Fernando Alegre spoke to the New York Haskell User Group about using CodeWorld to teach Haskell to high school students in Louisiana.
-
Measuring Haskell Container Sizes by Colin Woodbury
Some containers expose a custom
length
(orsize
) function, while some presentFoldable.length
as the canonical measurement tool. -
mason: alacritous builder library by Fumiaki Kinoshita
As long as the code is optimised, mason’s builder can be very fast (twice or more as bytestring).
-
Data Types in Rust: Borrowing from Both Worlds by Monday Morning Haskell
This week, we’ll study the basics of defining data types. As we’ve seen so far, Rust combines ideas from both object oriented languages and functional languages.
-
Ghosts of Departed Proofs Convenience by Chris Done
We can add a usability improvement by defining a
SomeNamed
existential in order to wrap up the new type introduced for then
inName n a
, and then a pattern synonym to conveniently unwrap that constructor. -
Defaulting fields in a record by Chris Done
Do you have 20+ fields of configuration for your kitchen sink API? This approach might be for you.
-
Monads aren’t as hard as you think by Ying Wang
So many references to burritos, or nuclear waste containers, or some other analogy that didn’t make sense to me.
-
ZuriHac 2020 registration is now open by Jasper Van der Jeugt
We are happy to announce that ZuriHac 2020 will take place from Friday the 12th to Sunday the 14th of June, hosted again at the HSR, on the shores of beautiful Lake Zurich.
-
Call for Haskell.org Committee Nominations by Jasper Van der Jeugt
It is time to put out a call for new nominations (typically but not necessarily self-nominations) to the Haskell.org committee.
-
Request for Nominations to the GHC Steering Committee by Joachim Breitner
The GHC Steering committee is seeking nominations for one new member.
-
Dhall version 1.28.0 released by Gabriella Gonzalez
Package of the week
This week’s package of the week is downloader
, a small, low-dependency library that provides turn-key file download over HTTP and HTTPS.