Contribute Media
A thank you to everyone who has made this possible: Read More

What Python can learn from Haskell packaging


Domen Kožar - What Python can learn from Haskell packaging [EuroPython 2016] [18 July 2016] [Bilbao, Euskadi, Spain] (

Haskell community has made lots of small important improvements to packaging in 2015. What can Python community learn from it and how are we different?

Haskell community has been living in "Cabal hell" for decades, but Stack tool and Nix language have been a great game changer for Haskell in 2015.

Python packaging has evolved since they very beginning of distutils in 1999. We'll take a look what Haskell community has been doing in their playground and what they've done better or worse.

The talk is inspired by Peter Simons talk given at Nix conference: [Peter Simons: Inside of the Nixpkgs Haskell Infrastructure][1]



  • Cabal (packaging) interesting features overview
  • Cabal file specification overview
  • Interesting Cabal features not seen in Python packaging
  • Lack of features (introduction into next section)
  • Cabal hell
  • Quick overview of Haskell community frustration over Cabal tooling
  • Stack tool overview
  • What problem Stack solves
  • How Stack works
  • Comparing Stack to pip requirements
  • Using Nix language to automate packaging
  • how packaging is automated for Haskell
  • how it could be done for Python
Improve this page