It seems that Ancient requires the values that are moved to be immutable full point. I understand that there is a problem if you have pointers from Ancient Heap to Ocaml Heap. But what about pointers that are internal to the Ancient Heap ? Am I talking nonsense? Sorry if I do. J On Tue, Nov 5, 2013 at 8:15 PM, Lukasz Stafiniak wrote: > On Tue, Nov 5, 2013 at 8:06 PM, Lukasz Stafiniak wrote: > >> On Tue, Nov 5, 2013 at 6:07 PM, Jean Krivine wrote: >> >>> >>> As far as I understand there is a module Ancient which I can use to tell >>> the GC to ignore my array but, if I understand well, it would only work if >>> I use my array in a read only fashion. >>> >> >> You cannot have pointers from Ancient heap to OCaml heap unless you do >> weak pointer management (e.g. in the finalizer of a value). Otherwise I >> think you're fine with modifying Ancient. >> > > Scratch that, totally thoughtless -- of course values are moved around so > you cannot have pointers from Ancient heap to OCaml heap, period. >