"Simon Marlow" <[EMAIL PROTECTED]> wrote, > > > > > > data Point > > > > > foreign import getMousePos :: Ptr Point -> IO () > > > > > foreign import getX :: Ptr Point -> IO Int > > > > > foreign import getY :: Ptr Point -> IO Int > > > > vs > > > > > data Point = Point (Ptr Point) > > > foreign import getMousePos :: Point -> IO () > > > > I like the second idiom. You are right that there is no need for > > the application programmer to know whether pointers are involved, > > because even in the first style, it is not possible to 'peek' inside > > a Ptr Point to get the `actual' Point value. So why not hide the > > pointer altogether? Yes. > > I presume that should be 'newtype' rather than 'data'?
True. Manuel _______________________________________________ FFI mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/ffi