Strict arguments with foreign import

Marcin 'Qrczak' Kowalczyk qrczak at
Wed Mar 16 04:27:07 EST 2005

Andre Pang <ozone at> writes:

> I'm just wondering -- for "primitive" C types (int, float, char, etc),
> why was the decision made in the FFI to have function declarations
> look like e.g.
>   foreign import ccall "math.h sin" sin :: CDouble -> CDouble
> rather than
>   foreign import ccall "math.h sin" sin :: !CDouble -> !CDouble

Haskell doesn't reflect strictness of functions in their types,
no matter whether foreign or not.

   __("<         Marcin Kowalczyk
   \__/       qrczak at

More information about the FFI mailing list