Subscribe now! We'll never send you spam. You can also follow us on Twitter or with 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

A tale of servant clients by Clement Delafargue At Fretlink, we use Servant a lot. All of our Haskell webservices are written using servant-server , which is a pure joy to use. In addition to servant-server , we also use servant-client , to query the services implemented with servant-server as well as external services. While just using servant-server is quite pleasant, raw servant-client use can get complicated.

All About Strictness Analysis (part 2) by Sebastian Graf At the end of part 1 from December 4, I made a promise to implement a strictness analysis à la GHC with you. Why would this be useful? In the last post, I argued that a rough understanding of how strictness analysis works helps to debug and identify the actual causes of missed unboxing opportunities and fix them with minimal effort. So here it is, enjoy!

Call for Ideas for 2019 by Jasper Van der Jeugt Google Summer of Code will take place again in 2019, for the 15th year of the program! As far as we know, a really important part of our application to GSoC is the list of ideas we provide. For that, I would like to count on all of you.

Lens into wrapped newtypes by Jappie Klooster Control.Lens.Wrapped uses the isomorphism property to introduce a type class Wrapped. Let’s explore use cases, because after all, it doesn’t appear to do much at first glance. What’s the point of formalizing wrapping and unwrapping of types?

Parsing infinite streams with attoparsec by Wander Hillen In a previous article, we looked at how Redis replication works and obtained a replication stream in our terminal using netcat . However, the data sent over was not very readable due to being encoded with the Redis Serialization Protocol. Since RESP is not native to most programs, parsing it will be necessary before an application can make use of the data.

Type annotations vs partial type signatures vs visible type applications by Alexey Radkov In Haskell, function calls must sometimes be annotated. One of well known examples is reading arbitrary types: read "5" :: Int . Without the type annotation :: Int , compiler cannot decide what the user wants to read.

Jobs

Galois is Hiring! (ad) Galois is looking for Software Engineers/Researchers and Project Managers! We collaborate with organizations like NASA, DARPA, and Amazon Web Services to explore blue sky ideas and turn them into usable technology. Some of the things we’ve worked on in the past: Formal methods, static analysis, binary analysis, cryptographic algorithms, domain specific languages, programming languages theory, abstract interpretation, type theory, formal verification and software correctness, reinforcement learning, autonomous systems assurance, communication security, cyber-deception for network defense, DDoS defense, provable hardware security, statistical anomaly detection for detecting advanced persistent threats. We think working here is awesome (see https://lifeatgalois.com).

Infrastructure Engineer at Arcesium in NYC Join the infrastructure team of a fintech company using AWS, Kubernetes, Python and Haskell to build a declarative infrastructure. We’re looking for someone experienced in design, development, and systems engineering. Compensation is competitive.

In brief

Package of the week

This week’s package of the week is hal, a runtime environment for Haskell applications running on AWS Lambda.

Call for participation

Events

North America

Europe

Oceania

2019-01-07 in Sydney, Australia by Sydney Type Theory: Homotopy Type Theory

South America