Hi all,

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

I'm fairly sure any foreign imported functions must be strict in their arguments, and it would make things a bit clearer for Haskell programmer. Am I missing something (non-)obvious in my reasoning?


-- % Andre Pang : trust.in.love.to.save <http://www.algorithm.com.au/>

_______________________________________________
FFI mailing list
FFI@haskell.org
http://www.haskell.org/mailman/listinfo/ffi

Reply via email to