
11 Jul
2012
11 Jul
'12
9:46 p.m.
On Wed, 11 Jul 2012, Bas van Dijk wrote:
The ideal, but currently, impossible way of dealing with this is to mark the _export_ of unsafe functions in a module as DEPRECATED and in a later version remove the unsafe functions and mark the module as Trustworthy. However this requires support for deprecating exports:
We can easily re-define functions, like module Old where import MyMod.Unsafe as Unsafe {-# DEPRECATED "unsafeDoSomething" #-} unsafeDoSomething :: a -> b unsafeDoSomething = Unsafe.unsafeDoSomething Do we really need deprecating exports?