Haskell Foundation May 2022 Update

Haskell Foundation May 2022 Update

New Executive Director and DevOps Engineer

Hello everyone! This was my first month as Executive Director, and I’ve been spending a lot of time getting to know our volunteers, sponsors, board, and community. Bryan Richter (AKA @chreekat), our DevOps Engineer, also started this month, and he’s already hard at work on improving GHC’s CI. Thank you all for the warm welcome that we’ve received!

Technical Agenda

This month has been a busy one for the Haskell Foundation’s technical agenda. Our technical agenda is primarily sourced through community suggestions and feedback, and we are able to execute on this agenda due to the generosity of both the open-source Haskell community and our sponsors. Please remember that proposals are just that - proposals. Your feedback will be taken into account as proposals are edited and considered.

DevOps

Bryan, our DevOps Engineer, is hard at work on improving GHC’s CI. He has been posting weekly updates about his activities:

Structured Errors

The structured errors work has two main components:

  1. Replacing directly-constructed error strings with datatypes that represent errors and warnings, to relieve client code from the burden of parsing messages
  2. Using the revealed structure to improve documentation, with an index that maps each message to additional information and context

The first component is included in GHC v9.4.1alpha2, but the second has not yet been completed. Together with @rae, I’ve been addressing this. He is building a version of GHC in which each error and warning has a unique code, and at ZuriHac 2022, I’ll be organizing volunteers to populate an initial version of a web site with explanations and examples that are indexed by the codes.

Security Advisories

I submitted a pre-proposal for a security advisory database for Haskell packages, modeled on RustSec. The intention is that a central location for recording security-relevant issues with packages will make it much easier to tell if a given project transitively depends on packages with known security concerns. We are coordinating with Github to ensure that Dependabot can support our advisory database.

GHC.X.Hackage

Ben Gamari (@bgamari) submitted a first version of a proposal to establish Hackage overlays for newer compiler versions. Today, it can take some time to update libraries to be compatible with new versions of GHC. A library with many transitive dependencies can be blocked until they are updated. The intention of the GHC.X.Hackage proposal is to create a mechanism to collect third-party compatibility patches as a stop-gap until libraries have first-party updates available. There is a vigorous discussion about the proposal in the linked pull request.

Tick-Tock Releases

Ben Gamari also submitted a first version of a proposal that GHC formalize a process of releases alternating between long-term supported releases and releases with a shorter support window. If you have feedback on this proposal, please share it in the linked pull request, so it can be taken into account as the proposal is revised.

Community

The Haskell Interlude podcast released Episode 12, an interview with Gergő Érdi.

Sponsorship

All of our work is made possible by our individual contributors and our sponsors. Thank you so much for your support!

Monad

Applicative

Functor

18 Likes

Has there been any consideration to removing Meta/Facebook from sponsors?

@kanishka forgive me for living under a rock, but what makes Facebook outstanding?

3 Likes

I’d say the immense, often unethical and sometimes illegal private data collection, analysis, and sales practices is the most important aspect. Furthermore there are admittedly less concrete indications that facebook causes depression and polarization in our society. And I also don’t like that they are polluting the free and open internet with their proprietary platforms, in some cases almost forcing people to sign up for their service lest they miss out on important announcements or social relations.

That said, I am personally still on the fence about receiving research funding from them despite all those things. I don’t think facebook gets much in return for this kind of contribution other than a slightly healthier Haskell ecosystem that they can make use of for some of their projects.

3 Likes

I deeply hope that the Haskell Foundation will not use its voice to drive political opinions.

However, it could make sense to clarify the ethos wrt receiving funding, so that the next question won’t be about blockchain, fintech etc.

3 Likes

We actually already have some structure around this issue: committees/donations.md · main · hf / meta · GitLab

After some deliberation when first addressing this issue, we recognized that we would never come up with hard rules on what was good to accept and what was bad to accept. Each case is different. The document linked above has some guidelines, but any decision would be made by the Donations Committee on a case-by-case basis. When it comes time to renew Meta’s sponsorship, @david-christiansen can decide to refer the matter to the committee (who have the option of also consulting the wider board or beyond, if they see fit).

It’s worth noting here that issues around accepting or rejecting donations will always be fraught. It is likely that someone could devise a reason to reject a donation from any given sponsor – no company (or person) acts perfectly all of the time. When and if this issue comes up on a concrete basis, I implore all of us to be open-minded, forgiving, and trustful of the HF leadership, in that we’re all trying to do the right thing for the Haskell language and community – even when opinions differ.

11 Likes

It’s in your hands: just don’t use facebook. I never have (nor Twitter). Announcements can’t be that important if they’re only on facebook. Get your social relations to use other media.

3 Likes

Makes sense. That’s cool that you have put thought into this. Sorry to just throw a random objection out of left field. I just like Haskell (as a distant outsider) and don’t like tarnishing its brand with Facebook association, but obviously its a complicated issue. I actually had my salary indirectly funded by a blockchain foundation (which funded a language documentation/marketing project) last year and I wasn’t happy about it, but I didn’t have much say at the time, so I am part of the problem sometimes.

Maybe someday the language foundations will have a “carbon offset” program for toxic funding, like redistributing some of the incoming funding to a leading alternative. For facebook, it could sending some of the donations to mastodon or signal.

3 Likes

What Richard says here is right - we have a process around this, and a set of guidelines for thinking it through.

If Meta offered to sponsor us today, however, I wouldn’t refer it to the committee. Taking our guidelines into account, I don’t see how turning down a sponsorship from them would help the Haskell community, and their sponsorship is very helpful in achieving our goals.

10 Likes