Core Libraries Committee seeks nominations for three expiring seats (including my own).
What is CLC?
CLC is a volunteer body, primarily tasked with management of API of base
package, but also owning so-called Core Libraries and responsible for PVP. You can find more at our home page.
Who should apply?
Anyone who meets the following criteria should apply:
- Candidates should have enough bandwidth to review merge requests to
base
on a semi-frequent basis (~3-4 per month), and sustain this for their 3 years term in a healthy manner.
- Candidates should be able to contribute opinions and analysis to issues raised by the community as a part of the CLC proposal process on a semi-frequent basis (~7 per month).
- Candidates should be good communicators, and at least be able to articulate to the CLC team when they will be available vs. unavailable.
- Candidates should be productive, and be able to follow through on merge requests and conversations to their completion in a diligent and timely manner.
We encourage any and all who satisfy these requirements to apply. Please note that we are not looking for the biggest galaxy brain in the room – quite the opposite. We are looking for productive, motivated individuals who want to help support the ecosystem that we love. As such, we hope to build a broad sample of the community.
How can I apply?
To apply for one of these positions, send an email to clc.nominations.2025@gmail.com that consists of the following data:
- The subject “CLC Election September 2025 - {your name}”.
- Why you think you’re a good fit given the above criteria.
- If applicable, please point us to some code you’ve written.
Please apply before Feb 2.
15 Likes
To give people a better idea about the workload and service level at CLC (and to up the topic ;), here is the output of https://github.com/haskell/core-libraries-committee/blob/main/Statistics.hs:
$ ./Statistics.hs
Timeframe: since 2021-10-23 until 2025-01-15
Total number of CLC proposals: 250
Rate of proposals: 6 per month
Approved proposals: 134
Declined proposals: 9
Median time from creation to decision: 48 days
Average time from creation to decision: 83 days
Median time from creation to approval: 50 days
Average time from creation to approval: 84 days
Fastest approval:
2 hours for "Use HasCallStack and error in GHC.List and .NonEmpty"
2nd fastest approval:
34 hours for "Remove default method from Bitraversable"
2nd slowest approval:
395 days for "`base` changes for exception backtrace proposal"
Slowest approval:
767 days for "Make NonEmpty functions less gratuitously lazy"
Total activity: 6465 comments
Median activity per proposal: 18 comments
Average activity per proposal: 26 comments
Median activity per approved proposal: 21 comments
Average activity per approved proposal: 30 comments
Least active approved proposal:
1 comment for "Export List from GHC.List"
2nd least active approved proposal:
6 comments for "Make cast between words and floats real primops"
2nd most active:
171 comments for "Proposal: Remove method (/=) from class Eq"
Most active:
177 comments for "Add {-# WARNING #-} to Data.List.{head,tail}"
Released in base-4.16: 1
Released in base-4.17: 11
Released in base-4.18: 24
Released in base-4.19: 25
Released in base-4.20: 34
Released in base-4.21: 24
Released in base-4.22: 5
Open proposals: 6
Median age for open proposals: 99 days
Average age for open proposals: 70 days
Newest open proposal:
11 days for "Add stripSuffix to Data.List"
Oldest open proposal:
101 days for "Add a suitable {-# WARNING in "x-partial" ... #-} to Data.List.{init,last}"
5 Likes