
Simon Marlow wrote:
On 14/07/2009 15:04, Ian Lynagh wrote:
I'd suggest
Haskell.V2010.Data.List (just re-exports from V2011 where possible) Haskell.V2010.Prelude (just re-exports from V2011 where possible) Haskell.V2011.Data.List Haskell.V2011.Prelude
with the implicit Prelude import being changed to Haskell.V<version>.Prelude where<version> is that latest the compiler supports, unless you say e.g. -XHaskell2010.
I find this rather jarring, because it moves versioning from where it should be (in the package metadata) to where it shouldn't be (in the module names).
I'd say that versioning of standards is rather different from versioning of packages, which makes it less jarring, but yes, it doesn't feel very nice and it would make porting code forwards annoying.
But there's a solution: we could remove the "standard" modules from base, and have them only provided by haskell-std (since base will just be a re-exporting layer on top of base-internals, this will be easy to do). Most packages will then have dependencies that look like
But this precludes the kind of changes to those modules that Ian described as having happened in the last few years. Ganesh =============================================================================== Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ===============================================================================