Strict arguments with foreign import

Andre Pang <[email protected]> Wed, 16 Mar 2005 19:49:06 +1100
Newsgroups gmane.comp.lang.haskell.ffi
Message-ID <[email protected]>
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/>