# GHC API: Call for requirements

**URL:** <https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940>\
**Category:** Announcements\
**Created:** [December 3, 2024, 4:51pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940 "2024-12-03T16:51:12Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![facundominguez](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/facundominguez/32/3486_2.png) [@facundominguez](https://discourse.haskell.org/u/facundominguez)\
**Post date:** [December 3, 2024, 4:51pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/1 "2024-12-03T16:51:12Z")

</div>

Dear all,

I am pleased to announce that the Haskell Foundation and Tweag are resuming [efforts](http://discourse.haskell.org/t/charting-a-course-toward-a-stable-api-for-ghc/7646) to define a stable API for GHC, and that I will continue the work of Alexis King as coordinator of the initiative.

In the first phase, we will collect and share a list of requirements for the GHC API that its users can propose, and select with the stakeholders the key features for an initial proposal of the API. For the sake of progress, the first proposal may be conservative, but it should serve as a foundation for further growth. In a second phase, a specification of the API will be elaborated.

To kick off the conversation, I invite all developers with a concern for the GHC API to reach out to me at [facundo.dominguez@tweag.io](mailto:facundo.dominguez@tweag.io). I’m keen to learn about the use cases and requirements that matter most to you.

Cheers!

---

<div class="post-metadata">

**Author:** ![Kleidukos](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/kleidukos/32/1213_2.png) [@Kleidukos](https://discourse.haskell.org/u/Kleidukos)\
**Post date:** [December 3, 2024, 8:53pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/2 "2024-12-03T20:53:03Z")

</div>

Perfect, I’ll get in touch!

---

<div class="post-metadata">

**Author:** ![runeksvendsen](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/runeksvendsen/32/3098_2.png) [@runeksvendsen](https://discourse.haskell.org/u/runeksvendsen)\
**Post date:** [December 5, 2024, 1:08pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/3 "2024-12-05T13:08:43Z")

</div>

I hope it’s okay that I write here instead of via email.

I’d like to point to Ben Gamari’s dump-decls script ([link](https://gitlab.haskell.org/ghc/ghc/-/tree/master/utils/dump-decls?ref_type=heads)) which I think is a good example of something that should be possible to implement via the future GHC API.

---

<div class="post-metadata">

**Author:** ![Kleidukos](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/kleidukos/32/1213_2.png) [@Kleidukos](https://discourse.haskell.org/u/Kleidukos)\
**Post date:** [December 5, 2024, 4:34pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/4 "2024-12-05T16:34:04Z")

</div>

I’m already on it 😉 [Maintain a golden test of your package's API with `diff-package-api` and `print-api`](http://discourse.haskell.org/t/maintain-a-golden-test-of-your-packages-api-with-diff-package-api-and-print-api/9997)

---

<div class="post-metadata">

**Author:** ![facundominguez](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/facundominguez/32/3486_2.png) [@facundominguez](https://discourse.haskell.org/u/facundominguez)\
**Post date:** [December 6, 2024, 5:59pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/5 "2024-12-06T17:59:27Z")

</div>

> [@runeksvendsen](#):
>
> I hope it’s okay that I write here instead of via email.

It makes no difference to me 🙂

Thanks for the pointer.

---

<div class="post-metadata">

**Author:** ![facundominguez](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/facundominguez/32/3486_2.png) [@facundominguez](https://discourse.haskell.org/u/facundominguez)\
**Post date:** [December 16, 2024, 4:01pm UTC](https://discourse.haskell.org/t/ghc-api-call-for-requirements/10940/6 "2024-12-16T16:01:39Z")

</div>

👋 Here’s a [first update](http://discourse.haskell.org/t/ghc-api-stability-update-1/11033) on the initiative.
