Gentle colleagues It has gradually become clear that the GHC and Hugs developers (mostly, but not entirely, at Microsoft Research and OGI) have become a bottleneck when it comes to discussing and refining proposals for enhancements to GHC, Hugs, and (soon, soon) the glorious combination thereof. I'm thinking of language enhancements, yes, but also lots of annoying, detailed things: omissions in libraries, new libraries, differences between GHC and Hugs, defining __HASKELL_98__ as a cpp macro, and so on, and so on, and so on. This message makes a proposal for opening the process up. The problem (*caricature*) ~~~~~~~~~~~ Users-eye view: I send in well-thought-out suggestions for things that would make Hugs and/or GHC much more useful to me, and they seem to vanish into a black hole. Developers-eye view: I get bombarded with suggestions for enhancements, some well thought out, some much less so. I have little idea about how important each suggestion is to the originator, and even less about how important it is to others. The process of turning the suggestion into a detailed specification seems easy but often isn't. Proposal ~~~~~~~~ Let's open up the process of identifying refining prioritising proposed enhancements to Hugs and/or GHC, to give a much wider audience the opportunity to contribute. Some kind of publicly-accessible web page giving the state of play on each proposal, its specification, its priority, and so on. The idea is that this wish-list would express the wishes and priorities of the Hugs/GHC *users*, not the developers. The developers (of whom I'm one), for their part, do not guarantee to take the wish list as an exact prescription of what to do next (i.e. no blank cheques), but do undertake to take it very seriously. After all, we want users! Mark's message of a few weeks ago mentioned that not all that many people contribute to the code base. One reason for that is that the code base is pretty daunting. With a bit of luck, a public wish list will a) give people a chance to contribute (by writing a library specification, for example) without having to become a heavy hacker b) make it easy for people who would like to contribute some code, to find a tractable task (e.g. write a library) whose usefulness and specification is agreed Managing the process ~~~~~~~~~~~~~~~~~~~~ Such a process doesn't happen all by itself; it needs a moderator to keep it coherent. Sven Panne has very generously agreed to play this role. In my view, he's ideal: he is mainly a user of the Hugs/GHC technology, and thus well-placed to articulate the user-community position, but he's also very knowledgeable about the implementations, which helps a lot in categorising and refining proposals. Focus ~~~~~ The focus, at least initially, is just the Hugs and GHC implementations including their libraries. We are not trying to hijack the (as yet nascent) Haskell 2 process. What next? ~~~~~~~~~~ Assuming that people generally think this is a good idea (and I'd be surprised if not), the next thing to do is to refine exactly how to structure the wish list, how to contribute to it, and so on. For example we should clearly separate "big wishes" (e.g. add arrows) from "little wishes" (e.g. add Ord ThreadId). Another example: any wish except a tiny one needs a specification, which someone has to write; we need a mechanism for getting it written. Another question: should we use the Haskell mailing list for this purpose, or start another? In the end, all of these things are up to Sven, but he will doubtless want to consult us. My own view is that he should operate in Benevolent Dictator mode (i.e. consult widely, but then just decide something). He's taking on a significant task here, and we should support him in it. Over to you, Sven! Simon