Hi All, I was wondering if this code would be welcomed under the guile umbrella. I guess that wingos new intsets could be used with it. It's a cool idea of taking a normal set library and add the concept of a complement without defing a world, this is safe because all such sets are defined as a discrete set of operations from pure atoms and that avoids the issue with non deciidability. To get all element of such a set intersect it with the world and off you go.
You can see a preliminary version at https://gitlab.com/gule-log/guile-log/blob/master/ice-9/set/complement.scm Another thing I would like to work on is to be able to get sets which elements are weak my feeling would be that it would be enough to have a function that generates a pair that are defined without gc guard of its elements, then one could ask for suitable dissapearing links and play with that ball functionally in the lisp world, I think with that element we could define a version of vhashes that can be weak in any suitable constellation. Preferable we could define a closed object weak pair for which the elements cannot be modified just to be safe and define accessors on them. WDYT. Any comments? Enjoy