Bob pointed out that the extends bound is not necessary in Listable. Enough to have it in List.
1.1 --- a/samples/effectivelist/src/org/apidesign/effectivelist/Listable.scala Mon Sep 03 01:06:24 2012 +0200
1.2 +++ b/samples/effectivelist/src/org/apidesign/effectivelist/Listable.scala Wed Dec 05 13:17:53 2012 +0100
1.3 @@ -4,7 +4,7 @@
1.4 * to previous and next items in the list effective.
1.5 */
1.6 // BEGIN: effectivelist.item
1.7 -trait Listable[T <: Listable[T]] {
1.8 +trait Listable[T] {
1.9 private[effectivelist] var prev : T = _
1.10 private[effectivelist] var next : T = _
1.11 }