Library_submissions and Call for Maintainers

We've had a lot of feedback over the last few months trying to get clarification on the role of the core libraries committee, and on the libraries@ process in general. In particular, Simon Peyton Jones asked us in his own rather inimitable manner to make sure that we sat down and started documenting things. After all, we've now been at this for almost a year and a half, and have started to figure out what is working and what isn't. In response to that feedback, we've recently taken the time to go through and update the Library_submissions https://wiki.haskell.org/Library_submissions page rather extensively to better describe and refine the libraries@ process and better define the role of the core libraries committee. Changes of note: * Up until now we've been using the rather ad hoc definition of "core libraries" as libraries that come with the Haskell Platform and which are subject to the libraries@ proposal process. We've recently taken it upon ourselves to clarify this further. To that end we've updated the Library_submissions https://wiki.haskell.org/Library_submissions page with a detailed summary of what libraries are considered "core" and why. * It was brought to our attention that figuring out even where to file a bug report or feature request for a given library was a tricky concern. To that end we've added information on how to find the appropriate issue tracker to the form. Communication: There are two forms of potential communication breakdowns that we'd like to address. We're still working on figuring out a more effective way to communicate what changes are happening in the background out to the community, lest we wind up with another situation like the Foldable/Traversable Proposal, where it caught an appreciable segment of the community unaware. We've started at least tracking issues that impact modules defined in the Haskell report in GHC trac with "report-impact", but we still have a lot more to do on this front. We have also been asked to help clarify what happens to a proposal once it leaves the libraries@ mailing list, assuming that the proposal is accepted by the maintainer. The issue was raised that it wasn't clear when an issue had been dropped on the floor, and who has responsibility to carry it forward at each stage along the way. To that end, we've posted some basic responsiveness guidelines https://wiki.haskell.org/Library_submissions#Responsiveness to help. We're not looking for a way to hold someone's feet to the fire, but merely for a way to keep proposals from getting stuck in limbo as they transition out of the libraries mailing list and into the hands of the maintainers. Maintainership: In an effort to maintain a greater level of throughput on issues that come along, we're trying to increase the number of projects that have active maintainers. Some of these aren't necessarily core libraries, but they are libraries that have been handed to the core libraries committee for maintenance. A couple of weeks back we sought out an active maintainer for the directory package, as it had accumulated several months worth of backlogged tickets, most of which just needed a clear head to make an informed decision about how to proceed. Phil Ruffwind and Elliot Robinson stepped up to fill this gap, and have been making a rather exciting amount of headway in clearing out the issue backlog, while managing to give those issues the consideration they are due. Emboldened by this success, we have a few other packages with which we'd like to do the same: * random We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness. * unix We've had a number of issues accrete over time, particularly issues that have to do with portability to lesser used platforms such as OpenBSD. We've also had a lot of cooks in the kitchen, so the documentation style for this library is all over the place. We could use a solid maintainer for this package who is deeply familiar with unix internals, and who, preferably would like to deal with bringing some order to these cross platform concerns. * Win32 None of us on the current core libraries committee are *particularly* well versed in current windows issues. We have a new "windows task force" as well. Would the task force -- or someone involved or who would like to be involved in it -- be willing to pick this up and carry the torch? * old-time, old-locale, haskell98 and haskell2010 The old-time and old-locale libraries are primarily maintained because their contents are mentioned in the Haskell Report, which is/was (mostly) implemented in the haskell98 and haskell2010 packages. Three months ago, we determined to stop shipping these as boot libraries with the GHC as a consequence of the Applicative-Monad Proposal. (Issue #9590 https://ghc.haskell.org/trac/ghc/ticket/9590) While Herbert Valerio Riedel recently started working on a "fully compliant" version of the Haskell 2010 report, there is a reasonably large design surface in that area, balancing between perfect compatibility and pragmatic compatibility with other libraries. These libraries could use a more active official maintainer. Thank you for your time. Please do not hesitate to contact me (or reply) with questions, concerns, or thoughts. -Edward Kmett

I would be happy to assume maintainership of `unix` with the goal of bringing order to cross-platform chaos. I'll also continue backing up Phil as a secondary maintainer of `directory`. -- Elliot Robinson GPG Key: 9FEDE59A On 02/28/15, Edward Kmett wrote:
We've had a lot of feedback over the last few months trying to get clarification on the role of the core libraries committee, and on the libraries@ process in general. In particular, Simon Peyton Jones asked us in his own rather inimitable manner to make sure that we sat down and started documenting things. After all, we've now been at this for almost a year and a half, and have started to figure out what is working and what isn't.
In response to that feedback, we've recently taken the time to go through and update the Library_submissions https://wiki.haskell.org/Library_submissions page rather extensively to better describe and refine the libraries@ process and better define the role of the core libraries committee.
Changes of note:
* Up until now we've been using the rather ad hoc definition of "core libraries" as libraries that come with the Haskell Platform and which are subject to the libraries@ proposal process. We've recently taken it upon ourselves to clarify this further. To that end we've updated the Library_submissions https://wiki.haskell.org/Library_submissions page with a detailed summary of what libraries are considered "core" and why.
* It was brought to our attention that figuring out even where to file a bug report or feature request for a given library was a tricky concern. To that end we've added information on how to find the appropriate issue tracker to the form.
Communication:
There are two forms of potential communication breakdowns that we'd like to address.
We're still working on figuring out a more effective way to communicate what changes are happening in the background out to the community, lest we wind up with another situation like the Foldable/Traversable Proposal, where it caught an appreciable segment of the community unaware. We've started at least tracking issues that impact modules defined in the Haskell report in GHC trac with "report-impact", but we still have a lot more to do on this front.
We have also been asked to help clarify what happens to a proposal once it leaves the libraries@ mailing list, assuming that the proposal is accepted by the maintainer. The issue was raised that it wasn't clear when an issue had been dropped on the floor, and who has responsibility to carry it forward at each stage along the way. To that end, we've posted some basic responsiveness guidelines https://wiki.haskell.org/Library_submissions#Responsiveness to help. We're not looking for a way to hold someone's feet to the fire, but merely for a way to keep proposals from getting stuck in limbo as they transition out of the libraries mailing list and into the hands of the maintainers.
Maintainership:
In an effort to maintain a greater level of throughput on issues that come along, we're trying to increase the number of projects that have active maintainers. Some of these aren't necessarily core libraries, but they are libraries that have been handed to the core libraries committee for maintenance.
A couple of weeks back we sought out an active maintainer for the directory package, as it had accumulated several months worth of backlogged tickets, most of which just needed a clear head to make an informed decision about how to proceed. Phil Ruffwind and Elliot Robinson stepped up to fill this gap, and have been making a rather exciting amount of headway in clearing out the issue backlog, while managing to give those issues the consideration they are due.
Emboldened by this success, we have a few other packages with which we'd like to do the same:
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
* unix
We've had a number of issues accrete over time, particularly issues that have to do with portability to lesser used platforms such as OpenBSD. We've also had a lot of cooks in the kitchen, so the documentation style for this library is all over the place. We could use a solid maintainer for this package who is deeply familiar with unix internals, and who, preferably would like to deal with bringing some order to these cross platform concerns.
* Win32
None of us on the current core libraries committee are *particularly* well versed in current windows issues. We have a new "windows task force" as well. Would the task force -- or someone involved or who would like to be involved in it -- be willing to pick this up and carry the torch?
* old-time, old-locale, haskell98 and haskell2010
The old-time and old-locale libraries are primarily maintained because their contents are mentioned in the Haskell Report, which is/was (mostly) implemented in the haskell98 and haskell2010 packages. Three months ago, we determined to stop shipping these as boot libraries with the GHC as a consequence of the Applicative-Monad Proposal. (Issue #9590 https://ghc.haskell.org/trac/ghc/ticket/9590) While Herbert Valerio Riedel recently started working on a "fully compliant" version of the Haskell 2010 report, there is a reasonably large design surface in that area, balancing between perfect compatibility and pragmatic compatibility with other libraries. These libraries could use a more active official maintainer.
Thank you for your time. Please do not hesitate to contact me (or reply) with questions, concerns, or thoughts.
-Edward Kmett
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

On February 28, 2015 at 11:39:48 PM, Edward Kmett (ekmett@gmail.com) wrote:
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
With regards to random, rather than making System.Random crypographically sound (which, as I understand it, could require changes to the API), there is a “halfway house” approach — implementation of the SplitMix algorithm of Steele, Lea and Flood [1]. This algorithm, now included in Java JDK8, claims that it is a "version of the purely functional API used in the Haskell library for over a decade, but SplitMix is faster and produces pseudorandom sequences of higher quality.” I am not volunteering to work on such a project, but it seems like it could not only be worthwhile, but quite a bit of fun for somebody with the right inclination. [1] http://dl.acm.org/citation.cfm?id=2660195&CFID=630640078&CFTOKEN=34009864 Cheers, Gershom

I'm not wedded to either approach on splitting. I'm mostly concerned that
we have someone who is at least giving these topics consideration.
-Edward
On Sun, Mar 1, 2015 at 12:26 AM, Gershom B
On February 28, 2015 at 11:39:48 PM, Edward Kmett (ekmett@gmail.com) wrote:
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
With regards to random, rather than making System.Random crypographically sound (which, as I understand it, could require changes to the API), there is a “halfway house” approach — implementation of the SplitMix algorithm of Steele, Lea and Flood [1]. This algorithm, now included in Java JDK8, claims that it is a "version of the purely functional API used in the Haskell library for over a decade, but SplitMix is faster and produces pseudorandom sequences of higher quality.”
I am not volunteering to work on such a project, but it seems like it could not only be worthwhile, but quite a bit of fun for somebody with the right inclination.
[1] http://dl.acm.org/citation.cfm?id=2660195&CFID=630640078&CFTOKEN=34009864
Cheers, Gershom

i'd be interested in at least being a comaintainer of random. A lot of work
i'm doing lately depends on having high quality + performant RNGs in
haskell. (i do think its a sufficiently subtle domain that 2 heads are
better than one for steering the course mind you)
On Sun, Mar 1, 2015 at 1:26 AM, Edward Kmett
I'm not wedded to either approach on splitting. I'm mostly concerned that we have someone who is at least giving these topics consideration.
-Edward
On Sun, Mar 1, 2015 at 12:26 AM, Gershom B
wrote: * random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate
On February 28, 2015 at 11:39:48 PM, Edward Kmett (ekmett@gmail.com) wrote: the
outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
With regards to random, rather than making System.Random crypographically sound (which, as I understand it, could require changes to the API), there is a “halfway house” approach — implementation of the SplitMix algorithm of Steele, Lea and Flood [1]. This algorithm, now included in Java JDK8, claims that it is a "version of the purely functional API used in the Haskell library for over a decade, but SplitMix is faster and produces pseudorandom sequences of higher quality.”
I am not volunteering to work on such a project, but it seems like it could not only be worthwhile, but quite a bit of fun for somebody with the right inclination.
[1] http://dl.acm.org/citation.cfm?id=2660195&CFID=630640078&CFTOKEN=34009864
Cheers, Gershom
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

| the SplitMix algorithm of Steele, Lea and Flood [1]. | This algorithm, now included in Java JDK8, claims that it is a | "version of the purely functional API used in the Haskell library for | over a decade, but SplitMix is faster and produces pseudorandom | sequences of higher quality.” Moreover, SplitMix has a published paper to describe it, which is massively better (in a tricky area) than an un-documented pile of code. I knew that Guy was working on this but I didn't know it was now published. Excellent! I would love to see this happen Simon | -----Original Message----- | From: Libraries [mailto:libraries-bounces@haskell.org] On Behalf Of | Gershom B | Sent: 01 March 2015 05:27 | To: Edward Kmett; Haskell Libraries | Subject: Re: Library_submissions and Call for Maintainers | | On February 28, 2015 at 11:39:48 PM, Edward Kmett (ekmett@gmail.com) | wrote: | > * random | > | > We've had some truly excellent work done over the last couple of | years | > on how to deal with "splitting" a random number generator in a | > cryptographically sound manner. I spent some time cleaning up a few | > outstanding issues for this package personally over the summer, but | > have not had nearly enough time to devote to the issue of how to | > integrate the outcome of the recent research on splitting, while | > simultaneously caring about performance and soundness. | | With regards to random, rather than making System.Random | crypographically sound (which, as I understand it, could require | changes to the API), there is a “halfway house” approach — | implementation of the SplitMix algorithm of Steele, Lea and Flood [1]. | This algorithm, now included in Java JDK8, claims that it is a | "version of the purely functional API used in the Haskell library for | over a decade, but SplitMix is faster and produces pseudorandom | sequences of higher quality.” | | I am not volunteering to work on such a project, but it seems like it | could not only be worthwhile, but quite a bit of fun for somebody with | the right inclination. | | [1] http://dl.acm.org/citation.cfm?id=2660195&CFID=630640078&CFTOKEN=3 | 4009864 | | Cheers, | Gershom | _______________________________________________ | Libraries mailing list | Libraries@haskell.org | http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

Gershom B
I am not volunteering to work on such a project, but it seems like it could not only be worthwhile, but quite a bit of fun for somebody with the right inclination. [1] http://dl.acm.org/citation.cfm?id=2660195&CFID=630640078&CFTOKEN=34009864
I'm happy to take a look but I can't find a copy of the paper you reference.

On Sat, Feb 28, 2015 at 8:39 PM, Edward Kmett
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
'random' has been on bad-footing for a while in terms of API and functionality. I can re-produce my issues if desired, but a core question seems to be acceptability. Is tf-random not pleasing to enough people? Or the splitting is too slow? I don't currently know of any users who want high performing _and_ cryptographically sound generators, though that would be great to have. I am only currently aware of cryptographic PRNGs with slow (ish) split times and statistically decent PRNGs with good split times. I've had to fix two commercial projects now that had used StdGen so I'm willing to do significant work getting a PRNG with both properties if we can quantify the performance requirements. So far my best options appear to be tf-random or a 800-90 style CTR DRBG that's computes large buffers resulting in high memory use and decent _amortized_ performance (including split). -TomMD

On Sat, Feb 28, 2015 at 9:30 PM, Thomas DuBuisson
I don't currently know of any users who want high performing _and_ cryptographically sound generators
Sorry, I ment to say: I don't know of any users who need a high performance split operation in a cryptographically sound generator. Obviously the actual generation of random bits should be high performance no matter what. Thomas

Edward Kmett
Emboldened by this success, we have a few other packages with which we'd like to do the same: * random We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
I'd like to throw my hat in the ring and become a co-maintainer also. I use random numbers a lot for various Monte Carlo simulations.

I'd enjoy that I think! btw, ErikD pointed out an interesting family of
RNGs yesterday
http://www.pcg-random.org/ (though any new major version revisions of
random should have a much more substantial test suite we need to run before
doing a release, but thats a discussion for another time : ) )
On Sun, Mar 1, 2015 at 7:29 AM, Dominic Steinitz
Edward Kmett
writes: Emboldened by this success, we have a few other packages with which we'd like to do the same: * random We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
I'd like to throw my hat in the ring and become a co-maintainer also. I use random numbers a lot for various Monte Carlo simulations. _______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

Carter Schonwald wrote:
I'd enjoy that I think! btw, ErikD pointed out an interesting family of RNGs yesterday http://www.pcg-random.org/ (though any new major version revisions of random should have a much more substantial test suite we need to run before doing a release, but thats a discussion for another time : ) )
There is already a haskell library implementing this: https://github.com/cchalmers/pcg-random Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/

hey Erik,
hrm, intersting! At least as starting point, interesting, though I already
see some ways it could be made even purer+threadsafer+faster,
thanks!
On Sun, Mar 1, 2015 at 2:14 PM, Erik de Castro Lopo
Carter Schonwald wrote:
I'd enjoy that I think! btw, ErikD pointed out an interesting family of RNGs yesterday http://www.pcg-random.org/ (though any new major version revisions of random should have a much more substantial test suite we need to run before doing a release, but thats a discussion for another time : ) )
There is already a haskell library implementing this:
https://github.com/cchalmers/pcg-random
Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/ _______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

I would be happy to assist with the Win32 library and/or be part of the "windows task force". I'm no Haskell expert but I do use GHC extensively on Windows for a few of our production apps. -- Andrew Klingenberg On 2015-02-28 21:39, Edward Kmett wrote:
We've had a lot of feedback over the last few months trying to get clarification on the role of the core libraries committee, and on the libraries@ process in general. In particular, Simon Peyton Jones asked us in his own rather inimitable manner to make sure that we sat down and started documenting things. After all, we've now been at this for almost a year and a half, and have started to figure out what is working and what isn't.
In response to that feedback, we've recently taken the time to go through and update the Library_submissions https://wiki.haskell.org/Library_submissions page rather extensively to better describe and refine the libraries@ process and better define the role of the core libraries committee.
Changes of note:
* Up until now we've been using the rather ad hoc definition of "core libraries" as libraries that come with the Haskell Platform and which are subject to the libraries@ proposal process. We've recently taken it upon ourselves to clarify this further. To that end we've updated the Library_submissions https://wiki.haskell.org/Library_submissions page with a detailed summary of what libraries are considered "core" and why.
* It was brought to our attention that figuring out even where to file a bug report or feature request for a given library was a tricky concern. To that end we've added information on how to find the appropriate issue tracker to the form.
Communication:
There are two forms of potential communication breakdowns that we'd like to address.
We're still working on figuring out a more effective way to communicate what changes are happening in the background out to the community, lest we wind up with another situation like the Foldable/Traversable Proposal, where it caught an appreciable segment of the community unaware. We've started at least tracking issues that impact modules defined in the Haskell report in GHC trac with "report-impact", but we still have a lot more to do on this front.
We have also been asked to help clarify what happens to a proposal once it leaves the libraries@ mailing list, assuming that the proposal is accepted by the maintainer. The issue was raised that it wasn't clear when an issue had been dropped on the floor, and who has responsibility to carry it forward at each stage along the way. To that end, we've posted some basic responsiveness guidelines https://wiki.haskell.org/Library_submissions#Responsiveness to help. We're not looking for a way to hold someone's feet to the fire, but merely for a way to keep proposals from getting stuck in limbo as they transition out of the libraries mailing list and into the hands of the maintainers.
Maintainership:
In an effort to maintain a greater level of throughput on issues that come along, we're trying to increase the number of projects that have active maintainers. Some of these aren't necessarily core libraries, but they are libraries that have been handed to the core libraries committee for maintenance.
A couple of weeks back we sought out an active maintainer for the directory package, as it had accumulated several months worth of backlogged tickets, most of which just needed a clear head to make an informed decision about how to proceed. Phil Ruffwind and Elliot Robinson stepped up to fill this gap, and have been making a rather exciting amount of headway in clearing out the issue backlog, while managing to give those issues the consideration they are due.
Emboldened by this success, we have a few other packages with which we'd like to do the same:
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
* unix
We've had a number of issues accrete over time, particularly issues that have to do with portability to lesser used platforms such as OpenBSD. We've also had a lot of cooks in the kitchen, so the documentation style for this library is all over the place. We could use a solid maintainer for this package who is deeply familiar with unix internals, and who, preferably would like to deal with bringing some order to these cross platform concerns.
* Win32
None of us on the current core libraries committee are /particularly/ well versed in current windows issues. We have a new "windows task force" as well. Would the task force -- or someone involved or who would like to be involved in it -- be willing to pick this up and carry the torch?
* old-time, old-locale, haskell98 and haskell2010
The old-time and old-locale libraries are primarily maintained because their contents are mentioned in the Haskell Report, which is/was (mostly) implemented in the haskell98 and haskell2010 packages. Three months ago, we determined to stop shipping these as boot libraries with the GHC as a consequence of the Applicative-Monad Proposal. (Issue #9590 https://ghc.haskell.org/trac/ghc/ticket/9590) While Herbert Valerio Riedel recently started working on a "fully compliant" version of the Haskell 2010 report, there is a reasonably large design surface in that area, balancing between perfect compatibility and pragmatic compatibility with other libraries. These libraries could use a more active official maintainer.
Thank you for your time. Please do not hesitate to contact me (or reply) with questions, concerns, or thoughts.
-Edward Kmett
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

Andrew Excellent, thank you! I've added you to the Windows Task Force list https://ghc.haskell.org/trac/ghc/wiki/WindowsTaskForce Simon From: Libraries [mailto:libraries-bounces@haskell.org] On Behalf Of Andrew Klingenberg Sent: 02 March 2015 23:40 To: Edward Kmett; Haskell Libraries Subject: Re: Library_submissions and Call for Maintainers I would be happy to assist with the Win32 library and/or be part of the "windows task force". I'm no Haskell expert but I do use GHC extensively on Windows for a few of our production apps. -- Andrew Klingenberg On 2015-02-28 21:39, Edward Kmett wrote: We've had a lot of feedback over the last few months trying to get clarification on the role of the core libraries committee, and on the libraries@ process in general. In particular, Simon Peyton Jones asked us in his own rather inimitable manner to make sure that we sat down and started documenting things. After all, we've now been at this for almost a year and a half, and have started to figure out what is working and what isn't. In response to that feedback, we've recently taken the time to go through and update the Library_submissionshttps://wiki.haskell.org/Library_submissions page rather extensively to better describe and refine the libraries@ process and better define the role of the core libraries committee. Changes of note: * Up until now we've been using the rather ad hoc definition of "core libraries" as libraries that come with the Haskell Platform and which are subject to the libraries@ proposal process. We've recently taken it upon ourselves to clarify this further. To that end we've updated the Library_submissionshttps://wiki.haskell.org/Library_submissions page with a detailed summary of what libraries are considered "core" and why. * It was brought to our attention that figuring out even where to file a bug report or feature request for a given library was a tricky concern. To that end we've added information on how to find the appropriate issue tracker to the form. Communication: There are two forms of potential communication breakdowns that we'd like to address. We're still working on figuring out a more effective way to communicate what changes are happening in the background out to the community, lest we wind up with another situation like the Foldable/Traversable Proposal, where it caught an appreciable segment of the community unaware. We've started at least tracking issues that impact modules defined in the Haskell report in GHC trac with "report-impact", but we still have a lot more to do on this front. We have also been asked to help clarify what happens to a proposal once it leaves the libraries@ mailing list, assuming that the proposal is accepted by the maintainer. The issue was raised that it wasn't clear when an issue had been dropped on the floor, and who has responsibility to carry it forward at each stage along the way. To that end, we've posted some basic responsiveness guidelineshttps://wiki.haskell.org/Library_submissions#Responsiveness to help. We're not looking for a way to hold someone's feet to the fire, but merely for a way to keep proposals from getting stuck in limbo as they transition out of the libraries mailing list and into the hands of the maintainers. Maintainership: In an effort to maintain a greater level of throughput on issues that come along, we're trying to increase the number of projects that have active maintainers. Some of these aren't necessarily core libraries, but they are libraries that have been handed to the core libraries committee for maintenance. A couple of weeks back we sought out an active maintainer for the directory package, as it had accumulated several months worth of backlogged tickets, most of which just needed a clear head to make an informed decision about how to proceed. Phil Ruffwind and Elliot Robinson stepped up to fill this gap, and have been making a rather exciting amount of headway in clearing out the issue backlog, while managing to give those issues the consideration they are due. Emboldened by this success, we have a few other packages with which we'd like to do the same: * random We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness. * unix We've had a number of issues accrete over time, particularly issues that have to do with portability to lesser used platforms such as OpenBSD. We've also had a lot of cooks in the kitchen, so the documentation style for this library is all over the place. We could use a solid maintainer for this package who is deeply familiar with unix internals, and who, preferably would like to deal with bringing some order to these cross platform concerns. * Win32 None of us on the current core libraries committee are particularly well versed in current windows issues. We have a new "windows task force" as well. Would the task force -- or someone involved or who would like to be involved in it -- be willing to pick this up and carry the torch? * old-time, old-locale, haskell98 and haskell2010 The old-time and old-locale libraries are primarily maintained because their contents are mentioned in the Haskell Report, which is/was (mostly) implemented in the haskell98 and haskell2010 packages. Three months ago, we determined to stop shipping these as boot libraries with the GHC as a consequence of the Applicative-Monad Proposal. (Issue #9590https://ghc.haskell.org/trac/ghc/ticket/9590) While Herbert Valerio Riedel recently started working on a "fully compliant" version of the Haskell 2010 report, there is a reasonably large design surface in that area, balancing between perfect compatibility and pragmatic compatibility with other libraries. These libraries could use a more active official maintainer. Thank you for your time. Please do not hesitate to contact me (or reply) with questions, concerns, or thoughts. -Edward Kmett _______________________________________________ Libraries mailing list Libraries@haskell.orgmailto:Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries

Edward Kmett
* random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
I finally managed to get some time to start looking at this. I have created a ticket here https://github.com/haskell/random/issues/25 Please add comments and any information you think Carter and I might find helpful. I discovered the package has some benchmarks that are 3+ years old. At the moment, I am not sure what they are telling me. If anyone has any background / views please chip in. Dominic.

There was some handwringing recently about the fact that we have two random
packages in the platform.
You may also want to look at what tf-random is doing, and see if it would
make sense to try to merge the two packages. Perhaps reach out to Michał
Pałka? It seems a shame to have two classes for Random lying around with
subtly different semantics.
-Edward
On Mon, Mar 30, 2015 at 3:55 AM, Dominic Steinitz
Edward Kmett
writes: * random
We've had some truly excellent work done over the last couple of years on how to deal with "splitting" a random number generator in a cryptographically sound manner. I spent some time cleaning up a few outstanding issues for this package personally over the summer, but have not had nearly enough time to devote to the issue of how to integrate the outcome of the recent research on splitting, while simultaneously caring about performance and soundness.
I finally managed to get some time to start looking at this. I have created a ticket here
https://github.com/haskell/random/issues/25
Please add comments and any information you think Carter and I might find helpful.
I discovered the package has some benchmarks that are 3+ years old. At the moment, I am not sure what they are telling me. If anyone has any background / views please chip in.
Dominic.
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
participants (10)
-
Andrew Klingenberg
-
Carter Schonwald
-
Dominic Steinitz
-
Edward Kmett
-
Elliot Robinson
-
Erik de Castro Lopo
-
Evan Laforge
-
Gershom B
-
Simon Peyton Jones
-
Thomas DuBuisson