
Iavor Diatchki wrote:
Hi, If this is the consensus, than people that feel this way should write a document describing the new process so that we know how to contribute code.
+1. unfortunately, I'm not volunteering today
- what is a "core" package Perhaps, a package that is distributed with GHC?
Evidently not -- mtl is probably considered a core package, and, it's not distributed with GHC. Perhaps, a package that is maintained by libraries@haskell.org?
- what constitutes a "significant" change Not sure how to define this. I would be weary of changes to the existing functions/types in the APIs of existing modules. But adding extra functionality? Especially, if---like in the case of Zipper---the implementation can be more or less computed from an existing definition in the package (I am referring to the fact that the zipper is the derivative of Tree, for details you can look at Conor's paper).
- what makes code "proven" Again, not sure how to define this. The code for Zipper has QC tests that cover it 100%, according to HPC.
Proven to be a useful interface, more than proven to be bug-free[*], IMHO. It's easier for us to maintain a package by perfecting its documentation, implementation etc. as a community; but harder to explore large design spaces when an existing solution comes to be felt as inadequate for the purposes it's used for. [*] of course you can't *prove* anything to be bug-free, let's say "demonstrated not to have too many fatal bugs" :-) -Isaac