Tech Agenda Track: Meeting Minutes 3/10

Haskell Foundation Technical Task Force (Slot 1) Meeting
10 March 2021


Emily Pillmore
Michael Snoyman
Ben Gamari
Chris Dornan
Moritz Angermann

Notes from Previous Meeting:

Tech Agenda Track: Meeting Minutes 3/5

We will work in two different groups, given our availability and time zone differences, using Slack for asynchronous coordination.

Goal of track:
strong focus to 3-6 month plans, with industrial adoption being a primary motivation

Action items:



  • Moritz: Items that we can get done in the time frame are:

    • profiling/performance
    • Windows MSI
  • Ben:

    • Can confirm that this is the case. We’ve done studies. Factor of 2-3x slower.
    • On linux this hasn’t been a problem. Hardware is fine
    • This is a windows specific issue.
  • Michael:

    • What you’re saying is “We have the right to turn away contributions that don’t actually help us.”
      I suggest: Moritz and Ben come up with a proposal for what they want, and then we present to the board (or other companies) for funding approval.


  • Emily:

    • Nobody knows what the preferred tools are
    • Document best practices
    • Examples: Hp2pretty, eventlog2html, Threadscope, ghc-debug, Criterion, weigh, interpreting runtime statistics, IPE profiling
  • Michael:

    • A curated, HF-sponsored book where we pay someone to keep it up to date that can serve as a repository of knowledge for these.
    • Community needs leadership on a centralized effort and some guarantees of maintenance.
  • Ben

    • A book is a great idea. Hecate, for example, is great at maintaining and coordinating documentation.
      What is the scope of the project?
  • Emily

    • Fine to start small, can increase later

GHC State of the Compilation

  • Michael:

  • Ben

    • Let’s create a dashboard for this
    • We have tools that do guage this information, but we are bad at looking at it and creating nice data visualizations. There’s no nice way of consuming the reports.
  • Emily

    • This requires us to figure out what the set of “critical” libraries is
    • PostgREST can post this information to a dashboard


  • Stackage could make sure everything builds as a kind of community build system
  • We don’t currently do this for anything but GHC releases, but we could do this for GHC Head
  • Having spent years in the Rust world, they are great about not breaking userspace
  • How do we break users less? Address template-haskell, base, ghc breakage. Reduce release cadence?


Not enough time to get to this one, but there are strong positives and negatives regarding Backpack, and we’ll sidebar to a dedicated slack channel to discuss those thoughts.

1 Like