The GHC Packaging Ecosystem
summary
Overview of how GHC treats libraries as concrete, registered units and how Cabal/Hackage/ghc-pkg/cabal-install actually interoperate: history from 2003 to today (Cabal → cabal-install, Hackage, hackathons since 2006), ghc-pkg writes a binary package.cache for fast startup, GHC no longer depends on Cabal, Hackage supports trustless mirrors, cabal-install produces opaque installed package ID strings so multiple instances of the same source version can coexist, tools construct a package environment by stacking package databases on disk.
AI-written summary · about
chapters (6)
- 0:00Introduction
- 1:34Haskell packaging history
- 22:52GHC and Cabal packages
- 43:28GHC package databases
- 1:07:21Package environments in GHC
- 1:28:40Q&A
related talks
32mStable Haskell
22mHaskell Tools, Compilers, Libraries and Community Projects
50mTemplate Haskell, a case study in (in)stability
01h 00mStackage: a community Haskell source package distribution
36mGHC Status Report
53mFalling Skies: Haskell Tooling and Ecosystem Growth
58mGHC Status Report
54mHaskell Project Showcase and Community Contributions
