How to find out the C type signature corresponding to a Haskell function type in FFI?

Tomasz Zielonka tomasz.zielonka at
Tue Mar 7 13:57:50 EST 2006

On Tue, Mar 07, 2006 at 04:35:27PM -0000, Brian Hulley wrote:
> A third point is, how would I pass an arbitrary monad instead of just using 
> IO?

What for? IO is the monad that most closely matches the imperative, C
semantics. That's why FFI only supports the IO monad (and pure
functions).  Other monads (you say arbitrary) may use rather complicated
machinery to implement their semantics (HOFs, laziness, algebraic data
types). I don't think it's a good idea to try implementing their actions
in C (if that's what you want).

Why do you need that?

Best regards

I am searching for programmers who are good at least in
(Haskell || ML) && (Linux || FreeBSD || math)
for work in Warsaw, Poland

More information about the Glasgow-haskell-users mailing list