The Glasgow Haskell Compiler (GHC) is the de facto compiler for the majority of Haskell code, unfortunately GHC compile times can be quite long. This problem is well known to the Haskell community, and a quick search reveals discussions on various internet forums about GHC compile times dating back through the last decade. Similarly, results from every State of Haskell survey include free responses such as “glacial compile times”, “I’d like better compile times”.
This talk is part of an on-going full-time internship at Tweag I/O whose goal is to speedup GHC compile times. We seek to enrich the problem for the Haskell community, collect community feedback, and report on our efforts to speedup compile times. The talk is split into two halves. First, we demo a tool that compiles a set of packages for a particular GHC version, and returns a csv file of compile times and memory allocations for each module, in each package across the package set. We visualize and present this data. In the last half of the talk, we give an experience report and present our successes, failures, and roadblocks encountered in the pursuit of faster compile times.
Mon 23 AugDisplayed time zone: Seoul change
01:30 - 03:00 | |||
01:30 22mTalk | Testing Haskell with Mocks HIW | ||
01:52 22mTalk | Adventures in GHC compile times HIW | ||
02:14 7mTalk | Lightning Talk: Pinned Warnings HIW | ||
02:21 7mTalk | Lightning Talk: GSOL: A Confluence Checker for Haskell Rewrite Rules HIW File Attached |