manual memory management
Tove
tove at fransson.se
Wed Jan 9 13:11:09 PST 2013
On Wednesday, 9 January 2013 at 20:16:04 UTC, Andrei Alexandrescu
wrote:
> On 1/9/13 12:09 PM, Mehrdad wrote:
>> It's memory-safe too. What am I missing here?
>
> What you're missing is that you define a store that doesn't
> model object references with object addresses. That's what I
> meant by "references are part of the language". If store is
> modeled by actual memory (i.e. accessing an object handle takes
> you to the object), you must have GC for the language to be
> safe. If store is actually indirected and gives up on the
> notion of address, then sure you can implement safety checks.
> The thing is everybody wants for references to model actual
> object addresses; indirect handles as the core abstraction are
> uninteresting.
>
>
> Andrei
Quote from OpenBSD's malloc implementation:
"On a call to free, memory is released and unmapped from the
process address space using munmap."
I don't see why this approach is less safe than a GC... in fact,
I claim it's safer, because it's far simpler to implement, and
thus less likely to contain bugs and in addition it's easy to
make performance vs safety trade-offs, simply by linking with
another memory-allocator.
More information about the Digitalmars-d
mailing list