
2009/12/10 Luke Palmer
I always meet with armies of resistance when I say this...
The troops arrive.
...but unsafePerformIO should die a horrible, unforgiven death. "Well what if you want blah blah blah with a pure interface?" My response: too fscking bad!
Wouldn't removing `unsafePerformIO` just force us, in many cases, to write the same thing in C and then import it? Or would you amend the FFI so "math.h sin" could not be imported pure? There are plenty of bad ways to use `unsafePerformIO`, this is true; but as we already have a tool for binding to native code in a way that trusts it to be pure, I don't see how having a way to bind to nominally side-effecting Haskell code in a way that trusts it to be pure adds anything to our troubles. -- Jason Dusek