Proposal : allocations made easier with non nullable types.

Denis Koroskin 2korden at gmail.com
Tue Feb 10 06:23:58 PST 2009


On Tue, 10 Feb 2009 17:11:06 +0300, Andrei Alexandrescu  
<SeeWebsiteForEmail at erdani.org> wrote:

> Nick Sabalausky wrote:
>> "Daniel Keep" <daniel.keep.lists at gmail.com> wrote in message  
>> news:gmpd71$8uj$1 at digitalmars.com...
>>> Alex Burton wrote:
>>>> I think it makes no sense to have nullable pointers in a high level  
>>>> language like D.
>>> Oh, and how do you intend to make linked lists?  Or trees?  Or any
>>> non-trivial data structure?
>>>
>>  Null Object Pattern:
>> --------------
>> class LinkedListNode(T)
>> {
>>     LinkedListNode!(T) next;
>>      private static LinkedListNode!(T) _end;
>>     static LinkedListNode!(T) end() {
>>         return _end;
>>     }
>>     static this() {
>>          _end = new LinkedListNode!(T);
>>     }
>> }
>> --------------
>
>
> What is "next" for the _end node?
>
> Andrei

Perhaps, 'this' (i.e. itself).



More information about the Digitalmars-d mailing list