{"type":"rich","version":"1.0","provider_name":"Transistor","provider_url":"https://transistor.fm","author_name":"Full Time Nix","title":"Horizon Haskell with Daniel Firth","html":"<iframe width=\"100%\" height=\"180\" frameborder=\"no\" scrolling=\"no\" seamless src=\"https://share.transistor.fm/e/266c0483\"></iframe>","width":"100%","height":180,"duration":2806,"description":"Daniel Firth\nHorizon Haskell\n\nIOHK\n\nGlasgow Haskell Compiler (GHC)\n\nhttps://hackage.haskell.org/package/base\nhttps://hackage.haskell.org/package/bytestring\nhttps://hackage.haskell.org/package/template-haskell\n\nThe Haskell Tool Stack\nStackage\nNixpkgs Haskell\n\nThe Python Package Index (PyPI)\n\nghc-devs mailing list thread about reinstallable base\n\nThe Dhall configuration language\n\nhttps://hackage.haskell.org/package/dhall\nhttps://hackage.haskell.org/package/hnix\n\nhttps://hackage.haskell.org/package/aeson\n\nPattern: every file is a flake-parts module\nflake-parts\nA repo in which the pattern is explained is demonstrated\n\nGenerated chapters\n00:00 Introduction\n01:41 Motivation Behind Horizon Haskell\n02:35 Understanding GHC and Haskell Code Compatibility\n05:06 Breaking Changes in GHC\n06:27 Maintaining Backwards Compatibility\n13:01 Horizon Haskell's Role in Package Management\n18:57 Challenges with Nixpkgs\n19:23 Future Improvements for Haskell Compatibility\n20:34 The Philosophy of Breaking Changes\n22:38 Overview of Horizon Haskell's Functionality\n30:38 Introduction to Horizon Haskell and Its Toolkit\n34:35 Building Haskell Libraries with Horizon Haskell\n37:55 Understanding Horizon Package Sets\n40:16 Managing Package Compatibility and Upgrades\n44:44 Patching and Upstream Contributions\n51:21 Future Developments and User Engagement","thumbnail_url":"https://img.transistorcdn.com/7NFFun166T66lu_dSbdoELdq995G1yBDX3YdgBqa9Ik/rs:fill:0:0:1/w:400/h:400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS81NDUw/YzMwNjE0NjA4NGIx/NzMyZWIwYTVlYzU2/YjFhNi5wbmc.webp","thumbnail_width":300,"thumbnail_height":300}