John Meacham <[EMAIL PROTECTED]> writes: > here are my canidate suggestions:
> * add a subset of Weak pointers Can you spell this out in detail. What are the functions? What are their semantics? > - or - > * add addForeignDependency :: ForeignPtr a -> ForeignPtr b -> IO () Again, could you spell out the semantics. > note that breaking these dependencies might be tricky/impossible This is something I don't understand. Why do you have to break dependencies? Is it to break dependency cycles? Also, when do you break dependencies? e.g., Do C finalizers need a way to tell Haskell to break a dependency? Do you manually detect that some objects have not been collected and speculatively start breaking dependencies? If the problem is cycles, would it be helpful if addForeignDependency detected when it created a cycle and raise an exception/ set a flag/ etc. -- Alastair _______________________________________________ FFI mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/ffi