[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Scheme-reports] Write procedure is not backwards compatible
On Sun, Jul 8, 2012 at 11:51 AM, John Boyle <johnthescavenger@x> wrote:
> Time for some benchmarking.
Time is a secondary concern. The primary concern
is space. If you have a data structure that requires
half of the available memory to store, then you already
no longer have enough space to build its graph.[1]
It is not unreasonable to work with a single data
structure that large, and we should ensure it's possible
to write it out.
--
Alex
[1] Technically an implementation could include a
visited? bit in the header of all heap objects and so
only require extra storage in the case of actual shares.
However, this requires having a header bit available,
and is also not thread-safe (you'd need to lock the
entire heap during traversal).