[Haskell-cafe] Re: Top Level TWI's again was Re: [Haskell] Re: Parameterized Show

Keean Schupke k.schupke at imperial.ac.uk
Tue Nov 23 04:03:09 EST 2004

Can a C function be pure? I guess it can... The trouble is you cannot 
proove its

But - why would you want to use a pure C function. The chances of any useful
C library function being pure are slim - and the performance of GHC in some
of the benchmarks shows that there is hardly any speed advantage (for a pure


Benjamin Franksen wrote:

>On Monday 22 November 2004 23:22, Keean Schupke wrote:
>>It seems to me that as unsafePerformIO is not in the standard and only
>>implemented on some
>>compilers/interpreters, that you limit the portability of code by using
>>it, and that it is best avoided. Also as any safe use of unsafePerformIO
>>can be refactored to not use it I could
>>certainly live without it.
>With one exception: If a foreign function (e.g. from a C library) is really 
>pure, then I see no way to tell that to the compiler other than using 
>unsafePerformIO. IIRC, unsafePerformIO is in the standard FFI libraries.

More information about the Haskell-Cafe mailing list