
Hi Simon, On Tue, Apr 03, 2007 at 11:21:34AM +0100, Simon Marlow wrote:
Data.ByteString.* --> fps (dep. on base, generics, array)
I think this should be called bytestring; fps will just be a random string to newcomers to Haskell.
Control.Concurrent.*, System.Timeout --> new package concurrent (needed by Data.Unique, where to move it?)
At worst it can go in a "unique" package.
Control.Applicative Data.Foldable, Data.Traversable Data.Map, Data.IntMap, Data.Set, Data.IntSet Data.Sequence, Data.Tree Data.HashTable Data.Graph ---> new package collections? containers? or split further? (dep. on array, generics, concurrent)
I assume you give "containers" as an option because I used it in #710, but I think I prefer "collections" myself. I'm not sure if it should be plural or singular. Logically it should match "array", but somehow "array" and "containers" feels right.
System.Console.GetOpt ---> new package getopt? consoleutils?
It might be nice to leave "getopt" for a future C getopt binding. I haven't checked for any dependencies you've missed or anything, but I think the way to do this sort of thing is to agree on a split in principle and then see if anything breaks when you try it. Overall it looks good, and makes later, more exciting refactoring easier! Thanks Ian