Let's get this finished
malcolm-ffi at cs.york.ac.uk
malcolm-ffi at cs.york.ac.uk
Thu Jan 4 10:10:17 EST 2001
> (1) It isn't H98 and in fact its interface cannot be
> implemented with H98[1]. The problem are the routines
> with signatures in patterns:
>
> malloc :: Storable a => IO (Ptr a)
> malloc :: IO (Ptr a) = mallocBytes (sizeOf (undefined::a))
I discovered this problem, and its fix, just before Christmas when I
tried to implement MarshallUtils for nhc98. I seem to have lost my
source code right now, but as I recall, we can keep this signature
just by wrapping the old implementation:
malloc :: Storable a => IO (Ptr a)
malloc = malloc_ undefined
malloc_ :: Storable a => a -> IO (Ptr a)
malloc_ x = mallocBytes (sizeOf x)
Regards,
Malcolm
More information about the FFI
mailing list