Artificial Intelligence1 min read

AI Contributions to GHC

By · Published by Everything Blog

In short

The Glasgow Haskell Compiler project implemented a policy outlining four mandatory requirements and one strong recommendation for contributors using large language models. Authors must openly disclose any machine-generated code, maintain direct human dialogue, and take full personal responsibility for their contributions. Additionally, maintainers strongly prefer that contributors manually write their final patches to ensure full comprehension and brevity. Private assistance for debugging and exploratory tasks remains permitted without formal disclosure.

Key points

  • Contributors must explicitly disclose any large language model generation present in subm…: Contributors must explicitly disclose any large language model generation present in submitted code, documentation, or tests.
  • Every contribution requires an identifiable human author who takes full responsibility fo…: Every contribution requires an identifiable human author who takes full responsibility for the submitted material.
  • Private utilization of artificial intelligence for debugging or code exploration does not…: Private utilization of artificial intelligence for debugging or code exploration does not require formal disclosure.

Sources checked by our analysis pipeline: 1

What contributors can do, what they must disclose, and why we think the policy is reasonable.

GHC now has a concrete policy for LLM-assisted contributions. By mid-October, maintainers were already referring to it directly in review discussions: Julian Ospald cited P3 of “the AI policy”, while Andreas Klebinger described LLM-generated bug fixes as “fine, it’s policy”.

The GHC wiki page itself predates this summer’s debate, so the URL alone does not show what changed. The current text does.

The policy follows the document Simon Peyton Jones developed through the ghc-devs discussion, rather than the competing “shared statement” proposed in July. The authors of that statement explicitly said it was not intended to replace a contribution policy, and Teo Camarasu argued against treating it as one.

The structure changed during the discussion. On July 27, the draft was being summarised as three policy points and one recommendation: make merge requests easy to review, take full responsibility for the contribution, declare direct LLM use, and preferably write the final version yourself. The current document has four policy points and one strong preference.…

Artificial Intelligence