~/talk

Haskell in Production: Adventures in Blockchain Building

Talkat LambdaConf 2019 · 2019-06-05..06-07· [haskell, devops-and-delivery]
links:none on file
slides:none on file

Haskell runs as the production language at Kadena powering Chainweb (public testnet v1) and Pact tooling; the stack uses Cabal 2.2 with default.nix, NixOS provisioning via NixOS + Terraform, no Docker and a Nix cache flip for deployments, ghcid gives ghcid fast-feedback during development, a single CWTool binary reduces compile/link time, streaming and non-empty containers are used for streaming and totality, Template Haskell generates lenses but Aeson instances are handwritten to avoid migration risk, and the system is running in production today.

AI-written summary · about

  1. 0:00Introduction
  2. 6:09Technical Questions
  3. 9:10Our Dev Environment
  4. 16:09Writing Haskell
  5. 16:44GHC ID
  6. 18:24Design Choices
  7. 26:09Auto Generate
  8. 28:09Deployment
  9. 35:14Readability
  10. 37:51Law of Gods
  11. 43:18NonEmpty List
  12. 45:58Quality of Life Libraries
  13. 50:00Library Errors
  14. 51:54Map Maybe
  15. 53:50Scheduler
  16. 55:54Generic Lens
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.