> On 14 Apr 2015, at 14:00, Sven Van Caekenberghe <s...@stfx.eu> wrote:
> 
> Peter,
> 
>> On 14 Apr 2015, at 13:52, Peter Uhnák <i.uh...@gmail.com> wrote:
>> 
>> I was surprised to learn that DoubleLinkedList is descendant of Object, 
>> while LinkedList is descendant of SequencableCollection. Is there a 
>> particular reason behind this? Are they really so conceptually different 
>> that DLL is not even considered a collection?
>> 
>> Thanks,
>> Peter
> 
> DoubleLinkedList was added to help the implementation of [LRU|TTL]Cache. It 
> was kept small and independent.
> 
> Inheriting from [Sequenceable]Collection is a larger responsibility, entails 
> more requirements.
> 
> I would not be against this, although I am not 100% sure it is easy (some 
> methods return the link nodes, not the elements, a distinction unknown to 
> collections in general - LinkedList is a bit ugly in this respect too). In 
> any case, it would have to be supported by enough tests. It could be a nice 
> project for Pharo 5.

One problem with LinkedList is that it is used by the scheduler and carefully 
written to be intererrupt-check free in some (undocumented) cases… in the past
this has already lead to very bad side-effects when people wanted to improve it 
or change it.

        Marcus

Reply via email to