Removing the .Safe modules from vector (was: Haskell Platform proposal: Add the vector package)

Johan Tibell johan.tibell at
Fri Aug 31 20:03:15 CEST 2012

On Fri, Aug 31, 2012 at 6:05 AM, Twan van Laarhoven <twanvl at> wrote:
> On 30/08/12 03:33, Johan Tibell wrote:
>>   * removes all the .Safe modules [1],
>>   * adds new .Unsafe modules, and
>>   * marks the functions that are now exported through the .Unsafe
>> modules deprecated in their original (non-.Unsafe) location.
> Is there a particular reason for first deprecating the functions exported
> from Data.Vector, instead of just removing them from their original
> location? By removing the Data.Vector.Safe module you already break some
> existing code, with the easy fix of moving to import Data.Vector. Moving the
> the unsafe functions to Data.Vector.Unsafe would introduce similar breakage,
> with a similarly easy fix of adding an import declaration.

See my answer to Simon about deprecation. The difference between
removing the .Safe modules and moving to .Unsafe is that no one uses
the Safe API but plenty of people use the unsafe* functions.

-- Johan

More information about the Libraries mailing list