Blog.

Hash Based Package Downloads - part 1 of 2

  • Michael Snoyman
  • 23.01.2018
  • Haskell
This is part 1 of a 2 part series. This post will define the problem we're trying to solve, and part 2 will go into some details on a potential storage mechanism to make ...
READ MORE

Weakly Typed Haskell

  • Michael Snoyman
  • 02.01.2018
  • Haskell
I was recently doing a minor cleanup of a Haskell codebase. I started off with some code that looked like this:
READ MORE

Parsing command line arguments

There are many ways to make programs that use settings to customise their behavior. In this post, we provide an overview of these methods and some best practices.
READ MORE

Building Haskell Apps with Docker

In this blog post we will show an example of how we can use Docker to build Haskell applications which we then ship inside Docker images.
READ MORE

Announcing Stack 1.6.1 release

See https://haskellstack.org for installation and upgrade instructions.
READ MORE

Techniques for Success with Offshore Software Development

When I ran Microsoft’s engineering tools group in the late 1990’s, remote engineering was uncommon and challenging. We had spent millions to relocate engineers to a ...
READ MORE

Lambda Conference and Haskell Survey

LAMBDA WORLD Conference Functional programmers are a unique breed of software development professionals. They have decided that the traditional methods to solving ...
READ MORE

Iterators and Streams in Rust and Haskell

Streaming data is a problem domain I've played with a lot in Haskell. In Haskell, the closest we come to built-in streaming data support is laziness-by-default, which ...
READ MORE

The Downfall of Imperative Programming

Imperative programming is in my bloodstream. I've been a C++ programmer for most of my life. I wrote a book about C++. I helped Andrei and Walter design an imperative ...
READ MORE