DIP 45 - approval discussion
deadalnix
deadalnix at gmail.com
Mon Nov 11 22:59:43 PST 2013
On Tuesday, 12 November 2013 at 05:46:19 UTC, Andrei Alexandrescu
wrote:
> On 11/11/13 2:36 PM, Timon Gehr wrote:
>> On 11/11/2013 11:02 PM, deadalnix wrote:
>>> On Sunday, 10 November 2013 at 12:39:35 UTC, Timon Gehr wrote:
>>>> What about Object.factory?
>>>
>>> I always though of it as a misfeature.
>>
>> Me too.
>
> ... well time to substantiate.
>
> Andrei
OK, but first, it has to be noted that this is putting the burden
of proof on the wrong side of the argument.
So I ran `grep -r * -e 'Object.factory'` on my d folder. I have
various D project there. The only uses of Object.factory are the
test suite of dmd, ldc and GDC.
I have bunch of D code in there, not simply mine. So first thing
: it is unused.
Secondly, the only useful things you can do with that require to
upcast (and break basic OOP principle, which is kind of ironic
for a feature that produce objects). The design of the feature is
unsound.
It is not that surprising as different possible uses case are
better solved with compile time reflection and metaprograming.
Implementationwise, this feature require to pull into the
application some unoptimizable bloat. It is also a tedious
constraint for shared objects as we see in this thread.
More information about the Digitalmars-d
mailing list