On Fri, Jun 26, 2015 at 9:08 AM, Herbert Valerio Riedel <h...@gnu.org> wrote: > > > We (see From: & CC: headers) propose, plain and simple, to turn the > currently defined type-synonym > > type FilePath = String > > into an abstract/opaque data type instead. > > Why/How/When?
I've had success with a slightly different "How": Phase 1: Replace FilePath with a type class, with instances for the old FilePath (i.e. String) and the new implementation. Phase 2: Wait until a suitable amount of hackage builds without the string instance. Phase 3: Deprecate the String instance - move it to an old-filepath package. Phase 4: Replace the type class with the new implementation This way the new implementation is available immediately, packages can begin converting at once, benefits can be assessed.
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs