Proposal: Tidy up and export PSQ from base

Johan Tibell johan.tibell at
Mon May 2 10:24:37 CEST 2011

On Mon, May 2, 2011 at 2:26 AM, Ian Lynagh <igloo at> wrote:
> But either way, this won't help the IO manager use the shared code, as
> it is in base. Personally I think breaking base up further is the right
> solution, including pulling most of the IO code out into its own package
> (you need to leavea little bit right at the bottom of the dependency
> hierarchy, so that you can define things like "error"), but that's had
> opposition in the past.

I think this is the way to go as well. Data structures (like Map) and
simple data types (like Maybe) needs to be in the bottom of the
hierarchy, so the rest of the libraries (i.e. base) can use them.

I found it quite frustrating to make the I/O manager GHC specific, by
e.g. changing all Data.Maybe to GHC.Maybe, when it could be compiler
neutral. I also don't like to have to duplicate things like PSQ and


More information about the Libraries mailing list