While running TestRunner, i noticed this:

LinkedListTest>>testTAdd does an infinite loop.

This is because:
  self collection first == self element

since the test does:
 self collection add: self element

this results in:
 self collection firstLink next next == firstLink

and consequently any loop will loop infinitely...

My base image is not well equipped with a Trait-aware Browser, so i let this one to Trait experts.


Anyway, I find LinkedList is NOT a generic Collection but rather a single not reusable hack for Process. This is regularly bugging newcomers, and I would recommend an evolution toward something like http://lists.squeakfoundation.org/pipermail/beginners/2008-July/004835.html

That is, Link should be a transparent-implementation-defined-intermediate not visible via standard add:/remove:/do: messages.
User should not have to provide a Link, but only the value.
Only LinkedList specialized messages like addLink: removeLink: linksDo: should deal with user provided Link for more advanced features.

Think of Dictionary and Association. A user can use Dictionary with: at: / at:put: without knowing about Association.

Nicolas

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to