$ grep -R 'unsafeCoerce' src/Control/Lens/Prism.hs:withPrism k f = case unsafeCoerce (k (Market Identity Right)) of src/Control/Lens/Internal/Coerce.hs:-- This module provides a shim around 'coerce' that defaults to 'unsafeCoerce' src/Control/Lens/Internal/Coerce.hs:coerce = unsafeCoerce src/Control/Lens/Internal/Coerce.hs:coerce' = unsafeCoerce
$ grep -R 'unsafePerformIO' src/Control/Lens/Internal/Reflection.hs: r = unsafePerformIO $ const <$> deRefStablePtr p <* freeStablePtr p src/Control/Lens/Internal/Exception.hs:supply = unsafePerformIO $ newIORef 0 src/Data/Data/Lens.hs:lookupon l field s = case unsafePerformIO $ E.try $ evaluate $ field $ s & indexing l %@~ \i (a::a) -> E.throw (FieldException i a) of src/Data/Data/Lens.hs:-- | inlineable 'unsafePerformIO' src/Data/Data/Lens.hs:cache = unsafePerformIO $ newIORef $ Cache emptyHitMap M.empty
Name:
Anonymous2015-04-08 1:45
absolutely goddamned disgusting
Name:
Anonymous2015-04-08 13:36
>>2 The lens library is indeed disgusting and it should be avoided at all costs.
Name:
Anonymous2015-04-08 14:07
>>3 it costs nothing to 'avoid it'. the only reason anyone uses it is because they think people will look up to them (and sadly retards will)