On Monday, 12 May 2014 at 17:52:18 UTC, Walter Bright wrote:
On 5/12/2014 7:46 AM, Steven Schveighoffer wrote:
pointing at it is roughly 1/256. This problem is just about
eliminated with
64-bit pointers.
Not generally true. This presumes that the heap is not in the
lower region of the address space and that you don't use 64 bit
ints on the stack.
Generally, it is a bad idea to allocate such large blocks on
the GC heap. GC's work best when the size of the objects being
allocated is very small relative to the size of the heap space.
Generally not true. This is a deficiency of not having a smart
allocator / precise scanning that use available meta information
properly (obtained statically or by profiling).
Fortunately, it's a mathematical inevitability that large
allocations relative to the GC size are rare, and so it isn't
much of a pain to handle them manually.
Programmer pain is not measured in number of instances, but in
terms of model complexity.
Ola.