You talk of transactions, "persistent in-memory" and garbage
collection. Are you sure you understand what persistence means here?
It's a matter of efficient structural sharing of data structures
rather than persistence in the database sense.
-Per
On Sat, Apr 3, 2010 at 9:13 PM, David R. Smith wr
They are not completely orthogonal. In fact they work well together.
One of the core assumptions in generational garbage collection is that
data in higher generations rarely grow pointers to data in lower
generations. This is often true in imperative programs. But absent
implicit mutation in the f
The two issues are orthogonal.
Even if Clojure had been going for full copies to preserve
immutability, the reason why the "old" copy would leak is only because
your code would hold a reference to it.
With structural sharing, those bits of "old" that are still retained
in "new" are precisely thos
Hi All,
I'm sold on the virtues of immutable data, but the notion of
"persistent in-memory data structures" sounds kind of like a euphemism
for a garbage collection leak.
Could someone point me to a reference explaining how persistent
transactional memory works in the context of garbage collectio