clear() and UFCS
Steven Schveighoffer
schveiguy at yahoo.com
Fri May 25 08:37:52 PDT 2012
On Fri, 25 May 2012 11:28:07 -0400, Alex Rønne Petersen <alex at lycus.org>
wrote:
> On 25-05-2012 17:23, Steven Schveighoffer wrote:
>> On Fri, 25 May 2012 11:03:33 -0400, Alex Rønne Petersen
>> <alex at lycus..org> wrote:
>>
>>> On 25-05-2012 16:56, Steven Schveighoffer wrote:
>>>>
>>>> Wow, you're right, it's not documented. That should be fixed!
>>>
>>> Before we do, we should deprecate clear and rename it to finalize,
>>> though.
>>
>> I don't like finalize because it's not a finalizer.
>>
>> I think we should mimic other languages that have a finalizer and a
>> deterministic dispose function.
>>
>> -Steve
>
> But it calls rt_finalize...?
Yeah, because non-deterministic destruction is part of deterministic
destruction.
finalize -> destroy non-gc resources
dispose -> 1. do deterministic destruction involving possible GC resources
2. call finalize.
e.g. a buffered file:
finalize -> close the file handle
dispose -> flush the GC allocated buffer into the handle, then close the
handle
-Steve
More information about the Digitalmars-d
mailing list